进程跟现程

 1 import os
 2 if __name__=='__main__':
 3 
 4     print( 'presses (%s) start....'%(os.getpid()))
 5     
 6     pid=os.fork()
 7     if pid<0:
 8         print('fork in error')
 9     elif pid==0:
10         
11         print('子(%s) 父(%s)'%(os.getpid(),os.getppid()))
12         print(os.getppid())
13     else :
14         print('父线程(%s)创建子线程(%s)'%(os.getpid(),pid))  
View Code

 

 1 print("This is console module")
 2 import os
 3 from multiprocessing import Process
 4 def run_proc(name):
 5     print('child process %s (%s) running'%(name,os.getpid()))
 6 if __name__=='__main__':
 7     print('parent process %s'%os.getpid())
 8     for i in range(5):
 9         p=Process(target=run_proc,args=(str(i),))
10         print('process will start')
11         p.start()
12     p.join()
13     print('process end')
View Code

 多进程Pool

 1 print("This is console module")
 2 from multiprocessing import Pool
 3 import os,random,time
 4 
 5 def run_task(name):
 6     print('task %s (pid=%s) running...'%(name,os.getpid()))
 7     time.sleep(random.random()*3)
 8     print('task %s end'%name)
 9 if __name__=='__main__':
10     print('current process %s'%os.getpid())
11     p=Pool(processes=3)
12     for i in range(5):
13         p.apply_async(run_task,args=(i,))
14     print('waiting for subprocessing done...')
15     p.close()
16     p.join()
17     print('all subprocess done')
View Code

 

posted @ 2018-08-08 00:44  我找寻一点人  阅读(92)  评论(0)    收藏  举报