使用Python多处理进行内存管理

时间:2014-01-24 10:27:46

标签: python memory-management multiprocessing

我理解它的方式,另一个Python实例启动了多处理。如果是的话,

一个。是否为每个多处理过程启动了Python实例?

湾如果一个进程正在工作,内存数据库表和另一个进程正在处理另一个内存数据库表,那么Python如何管理这两个进程的内存分配?

℃。 Wrt b),是调用之间持久的内存分配,即。如果连续使用第一个进程但不经常使用第二个进程,是否在进程调用之间重新创建了内存表?

1 个答案:

答案 0 :(得分:2)

(a)是

(b)Python几乎不管理它,操作系统

(c)是,如果第二个进程退出,则释放其资源,而不管第一个进程是否持续存在。原则上,您可以使用共享对象来允许第二个进程使用第一个进程排列的内容。如何使用“某事物”作为数据库表的具体例子是另一回事。

使用multiprocessing运行额外的Python进程非常类似于使用subprocess运行额外的Python(或Java)流程。不同之处在于multiprocessing为您提供了一套在流程之间进行通信的方法。它不会改变操作系统的基本生命周期和流程资源处理。