MemoryLock class

Lock that is used to synchronize execution within one process using shared memory.

Remember: This implementation is not suitable for synchronization of distributed processes.

Configuration parameters

  • options:
    • retry_timeout: timeout in milliseconds to retry lock acquisition. (Default: 100)

See ILock See Lock

Example

var lock = MemoryLock();
        try {
        lock.acquire("123", "key1")
            // Processing...
        } finally {
            lock.releaseLock("123", "key1",
                // Continue...

        }
    }
});
Inheritance
  • Object
  • Lock
  • MemoryLock

Constructors

MemoryLock()

Properties

hashCode → int
The hash code for this object. [...]
read-only, inherited
runtimeType → Type
A representation of the runtime type of the object.
read-only, inherited

Methods

releaseLock(String correlationId String key) → Future
Releases the lock with the given key. [...]
override
tryAcquireLock(String correlationId, String key, int ttl) → Future<bool>
Makes a single attempt to acquire a lock by its key. It returns immediately a positive or negative result. [...]
override
acquireLock(String correlationId, String key, int ttl int timeout) → Future
Makes multiple attempts to acquire a lock by its key within give time interval. [...]
inherited
configure(ConfigParams config) → void
Configures component by passing configuration parameters. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toString() → String
Returns a string representation of this object.
inherited

Operators

operator ==(dynamic other) → bool
The equality operator. [...]
inherited