1. 程式人生 > 其它 >Python-程序與執行緒

Python-程序與執行緒

多程序

多程序2

 1 import time
 2 from multiprocessing import Process
 3 import os
 4 
 5 
 6 def dance(num, name):
 7     print('Process of basketball is %s.' % os.getpid())
 8     for i in range(num):
 9         print(name+' is playing basketball right now.')
10         time.sleep(0.5)
11 
12 
13 def sing(num, name):
14 print('Process of the guitar is %s.' % os.getpid()) 15 for i in range(num): 16 print(name+' is playing the guitar next door.') 17 time.sleep(0.5) 18 19 20 if __name__ == '__main__': 21 print('Parent process: %s.' % os.getpid()) 22 # 下面這兩個是在建立子程序物件並指定執行的任務名 23 #
target就是指定函式名,args就是引數 24 # 若使用元組,引數位置必須按照定義的函式的順序來寫 25 p = Process(target=dance, args=(2, 'Bob')) # 只傳一個引數時,加個逗號,否則直譯器會認為這不是一個元祖而是一個數字 26 f = Process(target=sing, kwargs={'num': 2, 'name': 'Eric'}) # 使用字典時,甚至可以不按順序,只要引數名稱對就可以 27 # 啟動子程序並執行任務 28 p.start() 29 f.start() 30 p.join()
31 f.join() 32 print('Boys love these things.')