1
파이썬 다중 프로세스의 docs에 따르면 무한한 프로세스가 생성되는 것을 막기 위해 프로세스 생성은 if __name__ == '__main__':
절 안에 있어야합니다.메인 스크립트 외부에서 파이썬 다중 프로세스 사용하기
제 질문은 가져 오기 내부에서 다중 프로세스를 사용할 수 있습니까? 의 내가 주 실행 파일이 평가 있다고 가정 해 봅시다 :
import foo
def main():
foo.run_multiprocess()
if __name__ =='__main__':
main()
수입 된 foo.py 파일 : Obviusly
def run_multiprocess(number_to_check):
if number_to_check == 5:
print(number_to_check)
if __name__ == '__main__':
list_to_check = {1,2,3,4,5,6,7}
pool = Pool(processes=4)
pool.map(process_image, list_to_check)
을이의 그 라인을 따라
는뭔가 이것은 foo.py의 if 문 안의 코드가 실행되지 않기 때문에 작동하지 않습니다. 그래도 작동하도록 할 수있는 방법이 있습니까?
내가 이해하는 한 'm1 import f2'에서 새로운 프로세스를 생성합니다. 창에서 원래 프로세스의 필드를 모두 새 프로세스로 복사합니다. 새로운 프로세스를 생성하는 동안 'm1 import f2'라인을 다시 실행하고 '__main__'절에 없기 때문에 새 프로세스를 * 다시 만들고 다시 작성합니다. – Curtwagner1984