목록멀티프로세싱 (2)
스택큐힙리스트
더 자세히 말하면, 우리가 처음으로 /increment 엔드포인트를 호출할 때 두 작업자 중 하나만이 요청에 응답하는 것을 볼 수 있습니다 (이게 맞습니다. 두 작업자가 같은 작업을 수행하는 것은 원하지 않습니다). 그러나 두 개의 별도한 meta 객체가 있기 때문에 두 개 중 하나만 증가하게 됩니다. /report 엔드포인트를 호출할 때, 어떤 작업자가 요청에 응답하느냐에 따라 1 또는 0이 반환됩니다. 따라서 문제는, 작업자들이 어떻게 동일한 객체를 공유하고 작업할 수 있는지입니다. 부가적인 질문으로, 위에서 언급한 문제는 /reset 엔드포인트에도 영향을 미칩니다. 이 엔드포인트를 호출하면 작업자 중 하나만 객체를 재설정합니다. 모든 작업자가 엔드포인트 호출에 응답하도록 강제할 방법이 있는지 궁금합..
파이썬에서 *nix에서, time.sleep()는 스레드 또는 프로세스를 차단합니까?답변 1이것은 스레드를 차단합니다. Python 소스의 Modules / timemodule.c에서 floatsleep()에 대한 호출에서 휴면 작업의 본질적인 부분이 Py_BEGIN_ALLOW_THREADS 및 Py_END_ALLOW_THREADS 블록으로 래핑되어 현재 스레드가 잠자고있는 동안 다른 스레드가 계속 실행할 수 있도록 합니다. 이를 간단한 Python 프로그램으로도 테스트할 수 있습니다. import timefrom threading import Threadclass worker(Thread): def run(self): for x in xrange(0,11): print x time.sleep(1)cla..