成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

多任務---進程process使用總結(jié)。

J4ck_Chan / 3105人閱讀

摘要:查看有多少個子進程,可以使用命令來查看。很少的資源即可實現(xiàn)多任務??梢哉f線程時進程進程的一部分。當任務數(shù)固定,比較少,使用創(chuàng)建多進程當任務數(shù)不固定,數(shù)量較多時,使用進程池來解決。向進程池里面添加任務關(guān)閉進程池等待所有子進程執(zhí)行完畢。

進程

進程是啟動中的程序,擁有資源,比如攝像頭,鼠標,顯卡,網(wǎng)卡,鍵盤。讓操作系統(tǒng)調(diào)度。是資源分配的單位,進程切換時占用的資源比較大。

創(chuàng)建進程方式:

p1 = multiprocessing.Process(target=test1)?p1.start()

使用multiprocessing.Process可以創(chuàng)建多進程,但是創(chuàng)建每份子進程時都會復制一份代碼+資源,所以創(chuàng)建多進程會耗費更多的資源。

查看有多少個子進程,可以使用linux命令ps -aux來查看。

一. 進程和線程的區(qū)別:

進程:能夠?qū)崿F(xiàn)多任務,一個電腦上開多個qq, 需要很大的資源才能實現(xiàn)多任務
線程:能夠?qū)崿F(xiàn)多任務,一個qq上開了多個聊天窗口。很少的資源即可實現(xiàn)多任務。先有進程,才有線程??梢哉f線程時進程進程的一部分。

二. 消息隊列queue是進程間通信的一種方式,socket也是。

queue隊列:先進先出,
棧:先進后出
queue的使用:

q = Queue(3)?q.put("adsb")?print(q.full())??
try:?    q.put_nowait("aaa")?except:?    print("隊列已滿")??print(q.get())?print(q.empty())??
try:?    q.get_nowait()?except:?    print("隊列已空")

三. 進程池pool
pool是用來解決數(shù)量比較大的任務執(zhí)行時,所用到一種最大化資源利用的方式。
當任務數(shù)固定,比較少,使用multiprocessing.Process創(chuàng)建多進程;
當任務數(shù)不固定,數(shù)量較多時,使用進程池pool來解決。

po = Pool(3)??for i in range(10):?    po.apply_async(work, (i, ))  #向進程池里面添加任務
??po.close()  #關(guān)閉進程池
?po.join()  #等待所有子進程執(zhí)行完畢。意思是子進程都結(jié)束后,再操作子進程,必須再close的后面。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/43628.html

相關(guān)文章

  • 進程與線程

    摘要:進程與線程進程和線程是操作系統(tǒng)的基本概念但是它們比較抽象不容易掌握。線程,有時被稱為輕量進程,,是程序執(zhí)行流的最小單元。 進程與線程 進程(process)和線程(thread)是操作系統(tǒng)的基本概念,但是它們比較抽象,不容易掌握。 有一個很好的類比,可以把它們解釋地清晰易懂。 CPU 計算機的核心是CPU,它承擔了所有的計算任務。它就像一座工廠,時刻在運行。 假定工廠的電力有限,一次...

    Jingbin_ 評論0 收藏0
  • Python Process/Thread 概念整理

    摘要:每個在同一時間只能執(zhí)行一個線程在單核下的多線程其實都只是并發(fā),不是并行,并發(fā)和并行從宏觀上來講都是同時處理多路請求的概念。在多線程下,每個線程的執(zhí)行方式獲取執(zhí)行代碼直到或者是虛擬機將其掛起。拿不到通行證的線程,就不允許進入執(zhí)行。 進程與線程 并發(fā)與并行 進程與線程   首先要理解的是,我們的軟件都是運行在操作系統(tǒng)之上,操作系統(tǒng)再控制硬件,比如 處理器、內(nèi)存、IO設備等。操作系統(tǒng)為了向上...

    Youngs 評論0 收藏0
  • Python中編寫并發(fā)程序

    摘要:在中由于歷史原因使得中多線程的效果非常不理想使得任何時刻只能利用一個核并且它的調(diào)度算法簡單粗暴多線程中讓每個線程運行一段時間然后強行掛起該線程繼而去運行其他線程如此周而復始直到所有線程結(jié)束這使得無法有效利用計算機系統(tǒng)中的局部性頻繁的線程切換 GIL 在Python中,由于歷史原因(GIL),使得Python中多線程的效果非常不理想.GIL使得任何時刻Python只能利用一個CPU核,...

    _ipo 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<