python3을 사용하여 병렬로 프로세스를 실행하고 싶습니다. 내가 가지고있는 코드는 다른 코드 다음에 한 가지를 실행하고있다. 병렬로 만드는 방법에 대한 아이디어가 있습니까?다중 프로세스가 python3에서 병렬로 작동하지 않습니다.
from multiprocessing import Process
def work(x, outfile):
for i in range(0,200000):
print(x, i,'hello world', outfile)
if __name__ == '__main__':
NUM_THREADS = 4
for x in range(NUM_THREADS):
try:
outfile = "tmp"+str(x)
p = Process(target=work, args =(x, outfile))
p.start()
p.join()
except:
raise
print("Error: unable to start thread", x)
'p.join을()' 프로세스가 완료 될 때까지 대기합니다. 루프에서 빠져 나오기를 원합니다. – syntonym
'print' 전에'raise'를 쓰면 결코'print'되지 않을 것입니다. (re-'reise'는 다른 코드가 잡힐 때까지 후속 코드를 우회하거나'__main__'에서 완전히 빠져 나올 때까지). 'print'가 중요하다면 그것들을 바꿀 수 있습니다. – ShadowRanger