1. 程式人生 > >Python關於程序 程序之間的通訊 程序池的相關筆記

Python關於程序 程序之間的通訊 程序池的相關筆記

程序概念
程式的一次執行(正在執行的程式)
時間片輪轉(程式之間切換時間)
併發/並行(程序數與CPU的核數)
建立程序
面向過程
引入模組(multiprocessing(Process))
宣告函式(子程序執行體(引數可有可無))
判斷測試函式(如果在本部呼叫則執行:if name"mian")
例項化(需要呼叫啟動方法(.start()))
面向物件
引入模組(multiprocessing(Process))
宣告一個類(繼承Process模組):
初始化(繼承init)
宣告函式run(子程序執行體且不能改名)
判斷測試函式(如果在本部呼叫則執行:if name
"mian")
例項化(需要呼叫啟動方法(.start()))
建立程序池
引入模組(multiprocessing(Pool))
宣告函式(程序執行體)
判斷測試函式(如果在本部呼叫則執行:if name

"mian")
for 迴圈建立多個程序
例項化Pool(shli=Pool(3))
同步(shili.apply(函式名,(i+1,))):引數去掉預設名
非同步(shili.apply_async(函式名,(i+1,))):引數去掉預設名
呼叫.close方法
呼叫.join方法
程序之間的通訊
引入模組(multiprocessing(Process,Queue))
宣告函式(建立不同功能的程序執行體(Queue模組))
判斷測試函式(如果在本部呼叫則執行:if name
"mian")
例項化Queue(裡面引數為傳送的限度,沒有引數代表沒有限度)
例項化Process(需呼叫啟動方法)