栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

Python多处理内存使用情况

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Python多处理内存使用情况

multiprocessing
模块有效地基于
fork
系统调用,该系统调用创建当前进程的副本。由于您要在之前
fork
(或创建
multiprocessing.Process
)加载大量数据,因此子进程将继承数据的副本。

但是,如果您所运行的操作系统实现了COW(写时复制),那么除非您在父进程或子进程(父进程和子进程)中都修改了数据,否则物理内存中实际上只有一个副本。将
共享 相同的物理内存页面,尽管它们位于不同的虚拟地址空间中);即使这样,也只会为更改分配额外的内存(以

pagesize
增量为单位)。

您可以通过

multiprocessing.Process
在加载大量数据之前进行调用来避免这种情况。这样,当您在父级中加载数据时,其他内存分配将不会反映在子级进程中。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/412284.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号