Есть ли простой способ создать общесистемный мьютекс в Python на Linux? Под «общесистемным» я подразумеваю, что мьютекс будет использоваться группой процессов Python ; это отличается от традиционного мьютекса, который используется группой потоков в одном процессе.
РЕДАКТИРОВАТЬ: Я не уверен, что пакет Python multiprocessing
- это то, что я нужно. Например, я могу выполнить следующее в двух разных интерпретаторах:
from multiprocessing import Lock
L = Lock()
L.acquire()
Когда я выполняю эти команды одновременно в двух отдельных интерпретаторах, я хочу, чтобы один из них завис. Вместо этого ни один не зависает; похоже, они не получают один и тот же мьютекс.
Только для добавления одного к списку существует библиотека posix_ipc , которая имеет Semaphore
класс.
А Семафор с количеством 1 может использоваться в качестве Взаимное исключение . Для завершения трио поточной обработки , библиотека SystemEvent использует posix_ipc
и обеспечивает Событие также.