gpt4 book ai didi

python - Windows 上的 Python 中的多处理

转载 作者:可可西里 更新时间:2023-11-01 09:35:21 25 4
gpt4 key购买 nike

我正在尝试 python 文档中列出的示例 http://docs.python.org/library/multiprocessing.html特别是 Windows 上的这两个:

1)

from multiprocessing import Process

def f(name):
print 'hello', name

if __name__ == '__main__':
p = Process(target=f, args=('bob',))
p.start()
p.join()

2)

from multiprocessing import Process
import os

def info(title):
print title
print 'module name:', __name__
print 'parent process:', os.getppid()
print 'process id:', os.getpid()

def f(name):
info('function f')
print 'hello', name

if __name__ == '__main__':
info('main line')
p = Process(target=f, args=('bob',))
p.start()
p.join()

问题是:我没有从子进程中得到任何输出。虽然它适用于 Linux。这是怎么回事?

最佳答案

示例 1 运行良好。(我希望您将程序保存在文件中然后执行它,否则它根本无法识别函数 f)。

如果您想要父进程的 ID,示例 2 将无法运行。 windows下没有getppid。

只需打印 os.getppid 并执行,它一如既往地出色!

更多信息请引用 Doug . (更新:原始链接无效,here 类似。)

关于python - Windows 上的 Python 中的多处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8639745/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com