mutex — mutex-modul¶
Modulen mutex tillhandahåller en primitiv för ömsesidig uteslutning för att skydda kritiska kodsektioner eller delad data från samtidig åtkomst av en avbrottsrutin och huvudtråden.
Förvärv och frisläppning av lås utförs via en kontexthanterare (with-sats), som blockerar tills mutexen är tillgänglig. En icke-blockerande metod Mutex.test() tillhandahålls också.
Exempel:
from mutex import Mutex
mtx = Mutex()
# Acquire for a critical section (blocks if already held).
with mtx:
# ... protected code, e.g. shared buffer access ...
pass
# Or try without blocking.
if mtx.test():
try:
# ... protected code ...
pass
finally:
mtx.release()
class Mutex – mutex-objekt¶
- class mutex.Mutex¶
Skapar ett olåst mutex-objekt.
- release() None¶
Låser upp mutexen. Utlöser
mutex.MutexExceptionom mutexen inte är låst för närvarande.
Undantag¶
- exception mutex.MutexException¶
Underklass till
OSError. Utlöses avMutex.releasenär mutexen redan är olåst.