Python multiprocessing模块
(1)multiprocessing
支持子进程、通信和共享数据、执行不同形式的同步。
(2)Process
创建进程的类:Process([group [, target [, name [, args [, kwargs]]]]]),target表示调用对象,args表示调用对象的位置参数元组。kwargs表示调用对象的字典。Name为别名。Group实质上不使用。
方法有:is_alive()、.join([timeout])、run()、start()、terminate()。属性有:authkey、daemon(要通过start()设置)、exitcode(进程在运行时为None、如果为–N,表示被信号N结束)、name、pid。
Process类中,注意daemon是父进程终止后自动终止,且自己不能产生新进程,必须在start()之前设置。
创建进程
#!/usr/bin/env python from multiprocessing import Process import os def output(): print "My pid is :%d\n" % os.getpid() print "My parent is:%d\n" % os.getppid() def main(): p=Process(target=output) p.start() print "I am parent %d\n" % os.getpid() if __name__=="__main__": main()