進程傳遞數(shù)據(jù)最簡單方便的是通過Queue。這樣你的自建類對象就可以放到隊列中,由子進程獲取。到于Array,Var等方法,那是給高效數(shù)據(jù)共享用的。
共享內(nèi)存是進程通信的高級技巧。需要高性能計算的時候再研究這些方法。
Pool,Manager之類是一種封裝。用得反而比較少。
python與C++共享內(nèi)存里,還會使用一種Numpy中的數(shù)組。那個效率更高。
你的程序中子進程及傳遞參數(shù)都沒有問題。
你少了一句。在后面要加上p.join()就可以了如果不加,那么你的主進程不等子進程,它先退出了,往往操作系統(tǒng)會自動把子進程也殺掉。
另外子進程中的print輸出有延時。即使你用sys.stdout.flush(),有時候它也會有延時。