python正在处理等待deamon进程的主进程

2024-04-16 15:36:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我想了解多处理模块。下面是我的代码。你知道吗

from multiprocessing import Process, current_process
#from time import time
import time

def work(delay):
    p = current_process()
    print p.name, p.pid, p.deamon
    time.sleep(delay)
    print 'Finised deamon work'

def main():
    print 'Starting Main Process'
    p = Process(target=work, args=(2,))
    p.deamon = True
    p.start()
    print 'Exiting Main Process'

if __name__ == '__main__':
    main()

输出:

Starting Main Process
Exiting Main Process
Process-1 7863 True
Finised deamon work

我希望主进程在deamon进程之前退出(休眠2秒)。既然主进程退出,deamon进程也应该退出。但是输出让我困惑。你知道吗

预期产量:

Starting Main Process
Exiting Main Process
Process-1 7863 True

我对多处理模块的理解有误吗?你知道吗


Tags: 模块fromimporttruetime进程maincurrent