본문 바로가기

Language/Python

파이썬 multiprocessing 모듈 (map_async, apply_async)

map(), map_async()

  • map_async()는 인자를 넘겨줄때 하나의 튜플로 묶어야한다. ex) ((a),) or (a,b)

  • map은 block, map_async는 non-block

 

map_Async(), apply_async() 사용 시 사용할 수 있는 함수들 설명

  • get([timeout=x]) 결과가 도착할 때 반환. timeout 안에 도착하지 않으면 timeoutError 발생.

    timeout이 없을때, 결과가 도착하지 않는 경우를 경험했는데, 서브 프로세스의 결과가 도착할때 까지 메인 프로세스에서 다음으로 진행되지 못하고 계속 기다리는 현상 발생(hang).

  • wait([timeout=x]) 결과가 사용가능할때까지 또는 timeout이 지날때까지 기다린다.

    timeout이 지났는데도 결과가 사용불가능하다면 None을 리턴한다.

  • ready() 서브프로세스 호출이 완료했는지? True, False 반환

  • successful() 예외를 발생시키지 않고, 호출이 완료되었는지 돌려줌. 결과가 준비되지 않았다면 AssertionError 발생

 

 

반응형

'Language > Python' 카테고리의 다른 글

python 리스트 안에 딕셔너리 중복제거 하는 방법  (0) 2019.07.25
Selenium 간단 정리  (0) 2019.07.17
python logging 예제  (0) 2019.01.26
python chrome password  (0) 2019.01.13
python pysqlite  (0) 2019.01.05