マルチプロセスプログラムを実行しようとしていますが、何らかの理由で同時にプロセスが開始せず、他のプロセスが終了するのを待っています。以下はコードの一部といくつかの出力です。アドバイスをお願いしますか? 私はWindows 10でPython 2.7を実行していますが、Python 3.5 Ubuntuと同じ結果をテストしました。両方のプロセスが同じ機能を実行しているにもかかわらず複数のpythonプロセスを同時に起動できません
私がちょうど良くCPU
import multiprocessing
import time
import os
def function(x):
seq1 = x
index = 1
match = False
t = time.time()
while match == False:
.........................
if k==6 :
match = True
index = index + 1
def Main():
x1=raw_input("Please enter first sequence: ")
seq1=[]
seq1 = x1.split(",")
p1 = multiprocessing.Process(target=function(seq1),)
p1.start()
p2 = multiprocessing.Process(target=function(seq1),)
p2.start()
Main()
出力を使用する場合、その結果が結ばれていないので、1が最初に終了している私にとっては問題ではありません(私が持っていますP1が終了するまで待機してからP2すること)を開始: P1は プロセスIDを開始しました:4520 マッチで見つかった:30401191の試み ( 'でP1によって行わ:')1072.0950000286102、 P2は プロセスIDを開始しました:4520 マッチで見つかりました:8665524試して ( 'によって完了P2 in: '、298.375)
pythonは、そのプログラムを同期して実行します。したがって、同時に2つの機能を実行することはできません。しかし、あなたは[link](https://docs.python.org/3/library/threading.html#module-threading)_italic_ ** bold ** 'threading'とマルチプロセッシング –
' k'はそうではありません定義されている.... –
Windowsの場合は、モジュールの最上位レベルで 'Main'を呼び出さないでください。 [ドキュメント](https://docs.python.org/2/library/multiprocessing.html#windows)を参照してください。 –