«python-multiprocessing» 태그된 질문

8
Python 멀티 프로세싱 PicklingError : <type 'function'>을 (를) 피클 할 수 없습니다
더 간단한 예제로 오류를 재현 할 수 없어서 죄송합니다. 코드가 너무 복잡하여 게시 할 수 없습니다. 일반 파이썬 대신 IPython 쉘에서 프로그램을 실행하면 문제가 해결됩니다. 이 문제에 대한 이전 메모를 찾아 보았습니다. 풀을 사용하여 클래스 함수 내에 정의 된 함수를 호출했기 때문에 모두 발생했습니다. 그러나 이것은 나에게 해당되지 않습니다. Exception …

12
multiprocessing.Process에 전달 된 함수의 반환 값을 어떻게 복구 할 수 있습니까?
아래 예제 코드에서 함수의 반환 값을 복구하고 싶습니다 worker. 이 작업을 어떻게 수행 할 수 있습니까? 이 값은 어디에 저장됩니까? 예제 코드 : import multiprocessing def worker(procnum): '''worker function''' print str(procnum) + ' represent!' return procnum if __name__ == '__main__': jobs = [] for i in range(5): p = multiprocessing.Process(target=worker, …

1
풀 : map_async와 imap의 차이점은 무엇입니까?
파이썬의 사용 방법을 배우려고 노력하고있어 multiprocessing패키지를,하지만 난 사이의 차이를 이해하지 않습니다 map_async와 imap. 나는 눈치 그 모두 map_async와 imap비동기 적으로 실행됩니다. 그렇다면 언제 다른 것을 사용해야합니까? 그리고 내가 반환 한 결과를 어떻게 검색해야 map_async합니까? 이런 식으로 사용해야합니까? def test(): result = pool.map_async() pool.close() pool.join() return result.get() result=test() for i in …


2
여러 프로세스간에 결과 큐 공유
multiprocessing모듈에 대한 문서는로 시작하는 프로세스에 큐를 전달하는 방법을 보여줍니다 multiprocessing.Process. 하지만 시작된 비동기 작업자 프로세스와 큐를 공유하려면 어떻게해야 apply_async합니까? 동적 조인이나 다른 것이 필요하지 않습니다. 작업자가 결과를 다시 기지에 (반복적으로)보고하는 방법 일뿐입니다. import multiprocessing def worker(name, que): que.put("%d is done" % name) if __name__ == '__main__': pool = multiprocessing.Pool(processes=3) q …

3
파이썬 다중 처리 :`chunksize`의 논리 이해
chunksize방법에 대한 최적의 주장을 결정하는 요인은 무엇입니까 multiprocessing.Pool.map()? 이 .map()메서드는 기본 청크 크기에 대해 임의의 휴리스틱을 사용하는 것 같습니다 (아래 설명 됨). 그 선택에 동기를 부여하는 것은 무엇이며 특정 상황 / 설정에 기반한보다 사려 깊은 접근 방식이 있습니까? 예-내가 다음과 같이 말하십시오. ~ 1,500 만 개의 요소가 있는 iterable에 전달합니다 …

3
별도의 파일 / 스크립트를 쓰거나 쓰지 않고 하위 프로세스에서 함수를 실행할 수 있습니까?
import subprocess def my_function(x): return x + 100 output = subprocess.Popen(my_function, 1) #I would like to pass the function object and its arguments print output #desired output: 101 별도의 스크립트를 사용하여 하위 프로세스를 여는 것에 대한 문서 만 찾았습니다. 누구든지 함수 객체를 전달하는 방법 또는 함수 코드를 전달하는 쉬운 방법을 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.