多程序
importmultiprocessing
import
threading
import
time
defthread_run():
(threading.get_ident())
defrun(name):
time.sleep(2)
print('
hello
', name)
t = threading.thread(target=thread_run(),)#
啟動乙個執行緒
t.start()
if__name__ == '
__main__':
for i in range(10):
p = multiprocessing.process(target=run, args=('
bob %s
'%i,))#
啟動10個程序
p.start()
#p.join()
多程序queue
現在了解一下多程序queue
importmultiprocessing
deffunc(q):
q.put([42,none,"
hello
"])#
子程序在程序queue放了資料
if__name__ == '
__main__':
q = multiprocessing.queue()#
生成乙個程序queue,q
p = multiprocessing.process(target=func,args=(q,))#
建立乙個程序p,把程序queue作為引數傳遞給程序p
p.start()#
啟動程序
print(q.get())#
在父程序中顯示子程序的資料
另一程序間資料傳遞的例子
importmultiprocessing
deffunc(q):
q.put([42,none,"
hello
"])#
子程序p1在程序queue放了第一組資料
q.put([43,none,"
hello
"])#
子程序p1在程序queue放了第二組資料
deffunc2(q):
print(q.get())#
取出q中的資料
if__name__ == '
__main__':
q = multiprocessing.queue()#
生成乙個程序queue,q
p1 = multiprocessing.process(target=func,args=(q,))#
建立乙個程序p1,執行func函式,並把程序queue作為引數傳遞給程序p
p2 = multiprocessing.process(target=func2,args=(q,))#
建立乙個程序p2,執行func2函式,並把程序queue作為引數傳遞給程序p
p1.start()#
啟動程序p1
p2.start()#
啟動程序p2
print('--->',q.get())#在父程序中顯示子程序的資料
例子中主程序和p2子程序都可以從q中獲得,p1子程序存入的資料
d:\7_python\python37\python.exe d:/7_python/s14/其他/aaaa.py---> [42, none, '
hello']
[43, none, '
hello
']
Python 多程序程序池Queue程序通訊
from multiprocessing import pool,manager import time defhanshu queue,a n 1 while n 50 print r正在工作 d a,end n 1 步驟3 往佇列中傳送一條訊息 queue.put a time.sleep 2 ...
python多程序 python多程序
當有多個非相關任務需要處理時,並行能大大提高處理速度。這裡簡要介紹python的multiprocessing模組。簡單多程序編寫 當我們任務數量確定而且比較少的時候,可以手動為每個任務指定乙個程序來執行。import multiprocessing as mp def f a print a if...
Python多程序之Queue管道
from multiprocessing import process,queue 匯入程序的佇列模組,跟執行緒裡的是不一樣 deff q q.put 42,none,hello q.put test if name main 生成乙個佇列,然後將佇列傳給子程序,然後父程序就可以訪問這個子程序操作後...