인프런 커뮤니티 질문&답변

Tae won Seo님의 프로필 이미지
Tae won Seo

작성한 질문수

우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)

병렬성 1 - Futures(4-2)

주피터 노트북으로 실습하고 있는데 futures.ProcessPoolExecutor()는 동작을 안하네요

작성

·

261

0

# 진입점
def main():
    # Worker Count
    # worker 수를 10개 혹은 리스트의 원소 갯수 중 최소값으로 지정한다.
    worker = min(10, len(WORK_LIST))

    start_tm = time.time()  # 시작 시간

    # ProcessPoolExecutor
    with futures.ProcessPoolExecutor() as excutor:
        # map -> 작업 순서 유지, 즉시 실행
        result = excutor.map(sum_generator, WORK_LIST)

    end_tm = time.time() - start_tm  # 종료 시간
    msg = '\n Result -> {} Time : {:.2f}s'  # 출력 포맷
    print(msg.format(list(result), end_tm))  # 최종 결과

주피터 노트북 환경에서는 futures.ProcessPoolExecutor()가 동작을 안해서 파이썬 문서를 찾아보니 다음과 같은 내용이 적혀있었습니다.

__main__ 모듈은 작업자 서브 프로세스가 임포트 할 수 있어야 합니다. 즉, ProcessPoolExecutor 는 대화형 인터프리터에서 작동하지 않습니다.

위의 말이 정확히 무슨뜻인지 궁금합니다.

답변 1

Tae won Seo님의 프로필 이미지
Tae won Seo

작성한 질문수

질문하기