twisted.internet.defer.DeferredLock(_ConcurrencyPrimitive) class documentationtwisted.internet.defer
(View In Hierarchy)
A lock for event driven systems.
| Instance Variable | locked | Truewhen this Lock has been acquired, false at all other 
times.  Do not change this value, but it is useful to examine for the 
equivalent of a "non-blocking" acquisition. | 
| Method | acquire | Attempt to acquire the lock.  Returns a Deferredthat 
fires on lock acquisition with theDeferredLockas the value.  If the lock is locked, then the Deferred is placed at the 
end of a waiting list. | 
| Method | release | Release the lock.  If there is a waiting list, then the first Deferredin 
that waiting list will be called back. | 
| Method | _cancelAcquire | Remove a deferred d from our waiting list, as the deferred has been canceled. | 
Inherited from _ConcurrencyPrimitive:
| Method | __init__ | Undocumented | 
| Method | run | Acquire, run, release. | 
| Method | __aenter__ | We can be used as an asynchronous context manager. | 
| Method | __aexit__ | Undocumented | 
| Method | _releaseAndReturn | Undocumented | 
True when this Lock has been acquired, false at all other 
times.  Do not change this value, but it is useful to examine for the 
equivalent of a "non-blocking" acquisition.
  Remove a deferred d from our waiting list, as the deferred has been canceled.
Note: We do not need to wrap this in a try/except to catch d not being in self.waiting because this canceller will not be called if d has fired. release() pops a deferred out of self.waiting and calls it, so the canceller will no longer be called.
| Parameters | d | The deferred that has been canceled. | 
Attempt to acquire the lock.  Returns a Deferred that 
fires on lock acquisition with the DeferredLock
as the value.  If the lock is locked, then the Deferred is placed at the 
end of a waiting list.
| Returns | a Deferredwhich fires on lock acquisition. (type: aDeferred) | |