Class PostgreSqlTableLock
- Namespace
- Silverback.Lock
- Assembly
- Silverback.Storage.PostgreSql.dll
The distributed lock based on a PostgreSql table.
public class PostgreSqlTableLock : TableBasedDistributedLock, IDistributedLock
- Inheritance
-
PostgreSqlTableLock
- Implements
- Inherited Members
Constructors
PostgreSqlTableLock(PostgreSqlTableLockSettings, ISilverbackLogger<PostgreSqlTableLock>)
Initializes a new instance of the PostgreSqlTableLock class.
public PostgreSqlTableLock(PostgreSqlTableLockSettings settings, ISilverbackLogger<PostgreSqlTableLock> logger)
Parameters
settingsPostgreSqlTableLockSettingsThe lock settings.
loggerISilverbackLogger<PostgreSqlTableLock>The logger.
Methods
ReleaseLockAsync(string)
Releases the lock.
protected override Task ReleaseLockAsync(string handlerName)
Parameters
handlerNamestringThe name of the current handler.
Returns
TryAcquireLockAsync(string)
Tries to acquire the lock.
protected override Task<bool> TryAcquireLockAsync(string handlerName)
Parameters
handlerNamestringThe name of the current handler.
Returns
- Task<bool>
A Task representing the asynchronous operation. The result is
trueif the lock was acquired, otherwisefalse.
UpdateHeartbeatAsync(string)
Updates the last heartbeat of the lock.
protected override Task UpdateHeartbeatAsync(string handlerName)
Parameters
handlerNamestringThe name of the current handler.