python多程序並行程式碼例項
阿新 • • 發佈:2020-01-09
這篇文章主要介紹了python多程序並行程式碼例項,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
程式碼:
from multiprocessing import Process import sys,os import time def timetask(string): while True: print(string) def works(func,arg,worknum): proc_record = [] for i in range(worknum): p = Process(target = func,args = (i,)) p.start() proc_record.append(p) for p in proc_record: p.join() if __name__ == '__main__': arg = 5 procs = 4 works(timetask,procs)
效果圖【未加鎖,會發現數字1沒出現,程序間資源搶奪導致】:
優化之後效果:
程式碼:
from multiprocessing import Process import sys,os import time from threading import Lock def timetask(string): mutex.acquire() while True: print(string) if mutex.locked(): mutex.release() mutex = Lock() def works(func,procs)
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。