国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

詳解python之多進程和進程池(Processing庫)

2020-02-16 01:40:35
字體:
來源:轉載
供稿:網友

環境:win7+python2.7

一直想學習多進程或多線程,但之前只是單純看一點基礎知識還有簡單的介紹,無法理解怎么去應用,直到前段時間看了github的一個爬蟲項目涉及到多進程,多線程相關內容,一邊看一邊百度相關知識點,現在把一些相關知識點和一些應用寫下來做個記錄.

首先說下什么是進程:進程是程序在計算機上的一次執行活動,當運行一個程序的時候,就啟動了一個進程.而進程又分為系統進程和用戶進程.只要是用于完成操作系統的各種功能的進程就是系統進程,它們就是處于運行狀態下的操作系統本身;而所有由你啟動的進程都是用戶進程。進程是操作系統進行資源分配的單位。

直觀點說,在任務管理器的用戶名上標明system的是系統進程,標明administrator的是用戶進程,另外net是網洛,lcacal service是本地服務,關于進程更加具體的信息可以百科,這里得省點力氣,不然收不回了.

一.多進程的簡單使用

如圖,multiprocessing有多個函數,很多我也還沒去了解,這里只講我目前了解的.

進程創建:Process(target=主要運行的函數,name=自定義進程名稱可不寫,args=(參數))

方法:

    is_alive():判斷進程是否存活 join([timeout]):子進程結束再執行下一步,timeout為超時時間,有時進程遇到阻塞,為了程序能夠運行下去而設置超時時間 run():如果在創建Process對象的時候不指定target,那么就會默認執行Process的run方法 start():啟動進程,區分run() terminate():終止進程,關于終止進程沒有這么簡單,貌似用psutil包會更好,有機會以后了解更多再寫下。

其中,Process以start()啟動某個進程。

屬性:

    authkey: 在文檔中authkey()函數找到這么一句話:Set authorization key of process設置過程的授權密鑰 ,目前沒找到相關應用實例,這個密鑰是怎么用的呢?文章不提 daemon:父進程終止后自動終止,且自己不能產生新進程,必須在start()之前設置 exitcode:進程在運行時為None、如果為–N,表示被信號N結束 name:進程的名字,自定義 pid:每個進程有唯一的PID編號。

1.Process(),start(),join()

# -*- coding:utf-8 -*-from multiprocessing import Processimport timedef fun1(t): print 'this is fun1',time.ctime() time.sleep(t) print 'fun1 finish',time.ctime()def fun2(t): print 'this is fun2',time.ctime() time.sleep(t) print 'fun2 finish',time.ctime()if __name__ == '__main__': a=time.time() p1=Process(target=fun1,args=(4,)) p2 = Process(target=fun2, args=(6,)) p1.start() p2.start() p1.join() p2.join() b=time.time() print 'finish',b-a

這里一共開了兩個進程,p1和p2,arg=(4,)中的4是fun1函數的參數,這里要用tulpe類型,如果兩個參數或更多就是arg=(參數1,參數2...),之后用start()啟動進程,我們設置等待p1和p2進程結束再執行下一步.來看下面的運行結果,fun2和fun1基本在同一時間開始運行,當運行完畢(fun1睡眠4秒,同時fun2睡眠6秒),才執行print 'finish',b-a語句

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 宝坻区| 资兴市| 鄢陵县| 镇雄县| 榆林市| 上虞市| 理塘县| 萨嘎县| 霍山县| 彭水| 岢岚县| 遂昌县| 广南县| 云龙县| 静海县| 邯郸市| 开平市| 临泉县| 丰原市| 赤城县| 兴隆县| 五寨县| 甘孜县| 梅州市| 太保市| 且末县| 宁安市| 阳新县| 故城县| 乌鲁木齐市| 桦川县| 收藏| 舞钢市| 施秉县| 新宁县| 小金县| 乡城县| 蒲江县| 天津市| 和静县| 普格县|