2b55da68ae
This adds support for a "fair" variant of the lock. When there are multiple entities within a single process that are blocked waiting for the lock the fair lock will ensure that they acquire the lock in FIFO order. For now at least, when fair locks are in use we don't support the "semaphores" argument. If external locks are enabled, the inter-process ordering will be determined by the underlying OS lock ordering and process scheduling. Change-Id: I37577becff4978bf643c65fa9bc2d78d342ea35a
16 lines
741 B
YAML
16 lines
741 B
YAML
---
|
|
prelude: >
|
|
This release includes optional support for fair locks. When fair locks
|
|
are specified, blocking waiters will acquire the lock in the order that
|
|
they blocked.
|
|
features:
|
|
- |
|
|
We now have optional support for ``fair`` locks. When fair locks are
|
|
specified, blocking waiters will acquire the lock in the order that they
|
|
blocked. This can be useful to ensure that existing blocked waiters do
|
|
not wait indefinitely in the face of large numbers of new attempts to
|
|
acquire the lock. When specifying locks as both ``external`` and ``fair``,
|
|
the ordering *within* a given process will be fair, but the ordering
|
|
*between* processes will be determined by the behaviour of the underlying
|
|
OS.
|