我嘗試在Python文檔中列出http://docs.python.org/library/multiprocessing.html 特別是這兩個Windows上的例子:多處理在Windows上的Python
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上工作。到底是怎麼回事?
我建議你做異常處理。這會讓我們更清晰! – King 2011-12-26 23:18:23
除了父進程中的os.getppid,我沒有得到任何異常。如果我刪除,我只是得到父母的輸出,並沒有打印任何兒童。 – Bruce 2011-12-26 23:23:01