Open sandboxFocus

Method AcquireAccessAsync

AcquireAccessAsync(IThreadAware, ObjectAccessLevel)

Asynchronously acquires access for a given object.

Declaration
public static ConcurrentAccessAwaiter AcquireAccessAsync(this IThreadAware instance, ObjectAccessLevel objectAccessLevel)
Parameters
Type Name Description
IThreadAware instance

The instance for which access is required.

ObjectAccessLevel objectAccessLevel

The level of access required.

Returns
Type Description
ConcurrentAccessAwaiter

An ConcurrentAccessAwaiter object that can be used for awaiting for access.

Remarks

This method is guaranteed to acquire the controller of the instance object. Invoking the AcquireAccessAsync(ObjectAccessLevel) method directly does not offer this guarantee, as the controller can be changed between the moment the ConcurrencyController property is retrieved and the moment the AcquireAccessAsync(ObjectAccessLevel) is invoked.