EDIT : 문제는 내 프로그램의 구조와 관련이 없습니다. FAPWS3의 라우팅은 비슷하고 밀접하게 명명 된 기능을 선택했습니다.파이썬 전역 threading.condition() 및 여러 모듈에서 사용
저는 여러 파일에 걸쳐있는 큰 프로그램이 있습니다. 이 파일에 threading.condition() 잠금 기능을 사용해야합니다. 다음은 내가하려는 일의 예입니다. 프로덕션에서는 어떤 오류도 발생하지 않지만 잠금 상태는 공유되지 않습니다 (한 스레드에서 획득 할 수 있고 이전 스레드가 발표되지 않고 다른 스레드에서 획득 할 수 있음).
main.py
import servera, serverb
# some code that deploys server-a and server-b as threads
constants.py
import threading
mylock = threading.Condition()
servera.py
from constants import mylock
Class ServerA():
def doSomething():
mylock.acquire()
# do something
mylock.release()
serverb.py
from constants import mylock
Class ServerB():
def doSomethingElse():
mylock.acquire()
# do something else
mylock.release()
귀하의 의견은 귀하가 문제가 발생한 이유를 실제로 설명하지 않습니다. 실제로 문제를 입증하는 작업 코드의 최소한의 예를 게시하십시오. – SingleNegationElimination