搜索

首页  >  问答  >  正文

windows python 子进程内存是否存在复制主进程情况

在查看多进程文档的时候看到一段描述,os.fork()或者mutiprocess的创建的子进程和主进程的内存存在copy on write机制,也就是说子进程会复制主进程的内存。

因为看到的文档是在linux上,所以在windows上测了下。
在主进程中读入一个较大的文档再创建进程,和直接创建子进程。
比较后,仅其中一个进程内存占用变大。

请问,在windows中 python创建子进程是否会拷贝主进程的内存?如果会拷贝是在哪个步骤出现,建立子进程,还是启动子进程,或者是copy on write?有那些书比较详细系统的说明python的各种使用?

高洛峰高洛峰2752 天前931

全部回复(1)我来回复

  • 滿天的星座

    滿天的星座2017-06-12 09:25:56

    写时复制(COW)只是对于fork实现而言, 但是在windows是直接CreateProcess, 应该是不会有这个过程, 具体可以谷歌下CreateProcess的原理和实现, 也能参考下面的链接:
    windows下创建进程,CreateProcess()详解及用法

    回复
    0
  • 取消回复