Python3學習筆記--多執行緒
阿新 • • 發佈:2019-01-08
python並非真正意義上的多執行緒,不支援多核,只能單核,這是因為全域性鎖的原因
如果多個執行緒共享一個記憶體,如何做限制:
threading.RLock()
lock.release()
.join:表示必須等上一個函式執行完再執行下一個函式
import threading
import time
def run(num):
print('Hi , I am the thread',num)
time.sleep(1)
print('-->')
for i in range(20):
t = threading.Thread(target=run,args=(i,) )
t.start()
#t.join()
使用訊息佇列,可以防止多執行緒阻塞
如果想要多核,請使用多程序開發:
import time
from multiprocessing import Process
def sayHi(name):
print("hello word ",name)
time.sleep(1)
if __name__ == '__main__':
for i in range(10):
p = Process(target=sayHi,args=(i,))
p.start()
程序池: