0
클래스 메서드에 다중 처리를 사용하고 싶습니다. 이 answermultiprocessing
에있는 Pool
이 클래스 메서드를 직접 피할 수는 없지만 클래스 외부의 함수를 정의하여 해결 방법이 있으며 그 함수에 추가 인수를 추가하는 것으로 나타났습니다 (비슷한 제안은 blog에도 있습니다) . 그래서 나는 MyClass
이있는 간단한 프로그램으로 이것을 달성하려고 노력했다. fun
과 평행을 이룬다. 그러나 어떤 결과도 얻지 못하고 있습니다 (버그가 없습니다). 내가 뭔가를 놓치고있는 것 같지만 나는 거의 거기에 있다고 느낍니다! 모든 수정은 정말 감사드립니다.클래스 메서드의 다중 처리
import multiprocessing
class MyClass:
def __init__(self):
pass
def fun(self, myList):
print myList
def unwrap_fun(obj, myList):
return obj.fun(myList)
obj = MyClass()
mlp = multiprocessing.Pool(processes=multiprocessing.cpu_count())
mlp.imap_unordered(unwrap_fun, (obj, range(1, 10)))
고맙습니다. – Medo