Я пытаюсь создать общий мьютекс в Python (например, Shared_mutex в C++), чтобы несколько потоков могли читать переменную, в то время как один поток мог получить эксклюзивную блокировку (блокируя всех читателей), пока он меняет переменную(и), а затем разрешить всем потокам чтения доступ к переменной для чтения. Я не нашел ничего особенного в AI, и в документации Python, похоже, не говорится, что это возможно. Есть ли какой-нибудь обходной путь или способ «подделать» общий мьютекс?
Псевдокод будет выглядеть примерно так (в отдельных потоках) -
1 thread:
with self.__lock('exclusive'):
self.__var = True
all other threads:
with self.__lock('shared'):
x = self.__var
Подробнее здесь: https://stackoverflow.com/questions/798 ... mutex-lock