在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/Python  C/ python進程間通訊 能傳值嗎?

python進程間通訊 能傳值嗎?

進程A,是主進程。有自己的任務(wù)

進程B,是一個計時器(比如time.sleep)

當(dāng)B的計時到了后,送一個值給A。A就會執(zhí)行一個特定的函數(shù)。。

進程間能這樣傳值嗎?

用什么實現(xiàn)。謝謝

回答
編輯回答
挽青絲

能啊,管道挺適合的,利用 sendrecv 很容易實現(xiàn)兩個進程之間的通訊:

# coding: utf-8
import multiprocessing
import time
def proc1(pipe):
    while True:
        for i in range(100):
            print("send: %s" % i)
            pipe.send(i)
            time.sleep(2)

def proc2(pipe):
    while True:
        print("proc2 rev: %s" % pipe.recv())
        time.sleep(2)

if __name__ == "__main__":
    pipe = multiprocessing.Pipe()
    p1 = multiprocessing.Process(target=proc1, args=(pipe[0],))
    p2 = multiprocessing.Process(target=proc2, args=(pipe[1],))
    p1.start()
    p2.start()
    print("hello world")
2018年1月23日 13:21
編輯回答
殘淚

進程間通訊方式有很多種:
1,共享內(nèi)存;
2,信號量;
3,管道;
4,消息隊列;

根據(jù)具體業(yè)務(wù)需求來選擇,查查相關(guān)文檔了解下就會用了。

2017年2月11日 11:52