新聞中心
大綱

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供江州網(wǎng)站建設(shè)、江州做網(wǎng)站、江州網(wǎng)站設(shè)計(jì)、江州網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、江州企業(yè)網(wǎng)站模板建站服務(wù),十余年江州做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
- 使用多進(jìn)程的原因
- 創(chuàng)建多進(jìn)程的兩種方式
- 守護(hù)進(jìn)程
使用多進(jìn)程的原因
由于python中的多線程無法利用多核優(yōu)勢,如果想要利用CPU多核資源,需要使用多進(jìn)程。
創(chuàng)建多進(jìn)程
- Process([target [, args [, name [, kwargs]]]])
- # target 表示子進(jìn)程要執(zhí)行的任務(wù)
- # args 元組參數(shù)
- # kwargs 字典參數(shù)
- # name 表示子進(jìn)程的名稱
- # 方式一
- import time
- from multiprocessing import Process
- def run(name):
- print('{0} 開始跑步'.format(name))
- time.sleep(2)
- print('{0} 跑步結(jié)束'.format(name))
- p1 = Process(target=run, args=('小華', ))
- p2 = Process(target=run, args=('小米', ))
- p3 = Process(target=run, args=('小中', ))
- p1.start()
- p2.start()
- p3.start()
方式一演示結(jié)果
- # 方式二
- import time
- from multiprocessing import Process
- class Run(Process):
- def __init__(self, name):
- Process.__init__(self)
- self.name = name
- def run(self):
- print('{0} 開始跑步'.format(name))
- time.sleep(2)
- print('{0} 跑步結(jié)束'.format(name))
- p1 = Run('小華')
- p2 = Run('小米')
- p3 = Run('小中')
- p1.start()
- p2.start()
- p3.start()
方式二演示結(jié)果
守護(hù)進(jìn)程
守護(hù)進(jìn)程會在主進(jìn)程代碼執(zhí)行結(jié)束后就終止。如果子進(jìn)程的任務(wù)在主進(jìn)程任務(wù)結(jié)束后就沒有存在的必要了,那么該子進(jìn)程應(yīng)該在開啟前就被設(shè)置成守護(hù)進(jìn)程。主進(jìn)程代碼運(yùn)行結(jié)束,守護(hù)進(jìn)程隨即終止。
啟用time.sleep(3)和注釋后兩種結(jié)果演示
新聞標(biāo)題:想要利用CPU多核資源一Python中多進(jìn)程(一)
網(wǎng)頁鏈接:http://www.dlmjj.cn/article/coeesdd.html


咨詢
建站咨詢
