44

最初の質問は、Value と Manager().Value の違いは何ですか?

第二に、値を使用せずに整数変数を共有することは可能ですか? 以下は私のサンプルコードです。私が欲しいのは、値ではなく整数の値を持つ辞書を取得することです。私がしたことは、プロセスの後にすべてを変更することです。もっと簡単な方法はありますか?

from multiprocessing import Process, Manager

def f(n):
    n.value += 1

if __name__ == '__main__':
    d = {}
    p = []

    for i in range(5):
        d[i] = Manager().Value('i',0)
        p.append(Process(target=f, args=(d[i],)))
        p[i].start()

    for q in p:
        q.join()

    for i in d:
        d[i] = d[i].value

    print d
4

1 に答える 1