示例#1
0
 public static TUpgradeableHandle AcquireUpgradeableReadLock <THandle, TUpgradeableHandle>(IInternalDistributedUpgradeableReaderWriterLock <THandle, TUpgradeableHandle> @lock, TimeSpan?timeout, CancellationToken cancellationToken)
     where THandle : class, IDistributedSynchronizationHandle
     where TUpgradeableHandle : class, IDistributedLockUpgradeableHandle =>
 SyncViaAsync.Run(
     state => AcquireUpgradeableReadLockAsync(state.@lock, state.timeout, state.cancellationToken),
     (@lock, timeout, cancellationToken)
     );
示例#2
0
 public static ValueTask <TUpgradeableHandle> AcquireUpgradeableReadLockAsync <THandle, TUpgradeableHandle>(IInternalDistributedUpgradeableReaderWriterLock <THandle, TUpgradeableHandle> @lock, TimeSpan?timeout, CancellationToken cancellationToken)
     where THandle : class, IDistributedSynchronizationHandle
     where TUpgradeableHandle : class, IDistributedLockUpgradeableHandle =>
 @lock.InternalTryAcquireUpgradeableReadLockAsync(timeout, cancellationToken).ThrowTimeoutIfNull();