文章详情页
windows python 子进程内存是否存在复制主进程情况
问题描述
在查看多进程文档的时候看到一段描述,os.fork()或者mutiprocess的创建的子进程和主进程的内存存在copy on write机制,也就是说子进程会复制主进程的内存。
因为看到的文档是在linux上,所以在windows上测了下。在主进程中读入一个较大的文档再创建进程,和直接创建子进程。比较后,仅其中一个进程内存占用变大。
请问,在windows中 python创建子进程是否会拷贝主进程的内存?如果会拷贝是在哪个步骤出现,建立子进程,还是启动子进程,或者是copy on write?有那些书比较详细系统的说明python的各种使用?
问题解答
回答1:写时复制(COW)只是对于fork实现而言, 但是在windows是直接CreateProcess, 应该是不会有这个过程, 具体可以谷歌下CreateProcess的原理和实现, 也能参考下面的链接:windows下创建进程,CreateProcess()详解及用法
相关文章:
1. nignx - docker内nginx 80端口被占用2. dockerfile - 我用docker build的时候出现下边问题 麻烦帮我看一下3. javascript - 正则表达式 答疑4. docker不显示端口映射呢?5. dockerfile - [docker build image失败- npm install]6. webstorm中的mongodb插件问题7. docker安装后出现Cannot connect to the Docker daemon.8. 电脑上装了wamp后,再装了mysql,wamp上的mysql就不能用了9. mysql - msql什么叫并发10. mysql增量恢复出错
排行榜