python_day9 其他方法和屬性
阿新 • • 發佈:2017-06-26
方式 () mar spa process tro -h sta 才會
=====================part2: Process對象的其他方法或屬性
-------------------------join----------------------
正常情況下,主進程 制造了子進程後,自己會繼續執行,但是 使用join後, 主進程 會 等待子進程結束,再繼續執行
from multiprocessing import Process
import os
import time
def GO(name):
print(‘is go‘,name)
time.sleep(2)
print(‘is end‘,name)
if __name__ == ‘__main__‘:
p1=Process(target=GO,args=(‘la1‘,))
p2=Process(target=GO,args=(‘la2‘,))
p3=Process(target=GO,args=(‘la3‘,))
p4=Process(target=GO,args=(‘la4‘,))
p_l=[p1,p2,p3,p4]
for p in p_l:
p.start()
for p in p_l:
p.join()
print(‘主進程‘)
最後 才會打印 主進程
===========================daemon 守護進程=====================
from multiprocessing import Process
import os
import time
def GO(name):
print(‘is go‘,name)
time.sleep(2)
print(‘is end‘,name)
if __name__ == ‘__main__‘:
p1=Process(target=GO,args=(‘la1‘,))
p2=Process(target=GO,args=(‘la2‘,))
p3=Process(target=GO,args=(‘la3‘,))
p4=Process(target=GO,args=(‘la4‘,))
p_l=[p1,p2,p3,p4]
for p in p_l:
p.daemon=True
p.start()
# for p in p_l:
# p.join()
print(‘主進‘)
設置了守護進程後,主進程將不再等待 子進程結束, 自己就結束程序了,子進程切換為後臺方式 跑
還可以打印 print(p.name) print(p.pid) 獲取pid 和 名稱
p=Process(target=GO,args=(‘la1‘,),name=‘xxxx‘) 定義name
print(p.is_alive()) 查看進程是否存活
=====================part2: Process對象的其他方法或屬性
python_day9 其他方法和屬性