Asynchronously locks the cached object in SOSS to prevent other clients from updating
or removing it. This extension method is simply a convenience wrapper for AcquireLockAsync(CachedObjectId, LockTicket, CancellationToken)
that creates a CachedObjectId from id.
Namespace: Soss.Client.Extensions
Assembly: soss_namedcache (in soss_namedcache.dll) Version: 6.2.0.0
Syntax
public static Task<LockTicket> AcquireLockAsync( this NamedCache cache, byte[] id, LockTicket lockTicket = null, CancellationToken cancellationToken = null )
Parameters
- cache
- Type: Soss.ClientNamedCache
the NamedCache this extension method operates on. - id
- Type: SystemByte
a byte that will be transformed into a CachedObjectId via CreateKey(Byte) which identifies the object in the cache. - lockTicket (Optional)
- Type: Soss.ClientLockTicket
If specified, the expected LockTicket corresponding to the locked object - cancellationToken (Optional)
- Type: System.ThreadingCancellationToken
An optional CancellationToken that can be used to cancel the asynchronous operation.
Return Value
Type: TaskLockTicketA TaskTResult. The LockTicket can be supplied to other asynchronous API methods to indicate that the caller expects the object to be locked with the given LockTicket.
Usage Note
In Visual Basic and C#, you can call this method as an instance method on any object of type NamedCache. When you use instance method syntax to call this method, omit the first parameter. For more information, see Extension Methods (Visual Basic) or Extension Methods (C# Programming Guide).Exceptions
Exception | Condition |
---|---|
ArgumentNullException | Thrown when id is null. |
NotSupportedException | Thrown when unexpected status is returned from the cache. |
ReadThroughTimeoutException | Thrown if backing store read-through or GeoServer pull replication is used with this NamedCache and the retrieval of the object is delayed beyond the number of retries specified by MaxReadThroughPendingAttempts. |
ObjectLockedException | Unable to acquire lock while retrieving object. |
See Also