Compartir a través de


InstancePersistenceContext.BeginBindReclaimedLock Método

Definición

Comience una operación asincrónica para enlazar un bloqueo existente en una instancia al identificador de instancia actual. La versión del bloqueo existente se pasa como parámetro.

public:
 IAsyncResult ^ BeginBindReclaimedLock(long instanceVersion, TimeSpan timeout, AsyncCallback ^ callback, System::Object ^ state);
public IAsyncResult BeginBindReclaimedLock (long instanceVersion, TimeSpan timeout, AsyncCallback callback, object state);
member this.BeginBindReclaimedLock : int64 * TimeSpan * AsyncCallback * obj -> IAsyncResult
Public Function BeginBindReclaimedLock (instanceVersion As Long, timeout As TimeSpan, callback As AsyncCallback, state As Object) As IAsyncResult

Parámetros

instanceVersion
Int64

Versión del bloqueo mantenido en la instancia o cero si el proveedor de persistencia no implementa las versiones de bloqueo.

timeout
TimeSpan

Período de tiempo de espera para la operación asincrónica.

callback
AsyncCallback

Método al que se llama una vez completada la operación.

state
Object

Información de estado asociada a la operación asincrónica.

Devoluciones

IAsyncResult

Estado de una operación asincrónica.

Comentarios

Al intentar adquirir un bloqueo, el proveedor de persistencia puede decidir que la instancia actual ya está bloqueada en el almacén actual. Si el token de bloqueo coincide con el token de bloqueo del identificador actual, el proveedor de persistencia puede intentar reclamar el bloqueo inspeccionando su versión y pasándoselo a BeginBindReclaimedLock. El proveedor de persistencia no debe realizar cambios en la instancia hasta que el bloqueo se reclame correctamente. Si no hay ningún otro identificador enlazado al bloqueo, la operación BeginBindReclaimedLock se ejecuta correctamente y el identificador actual se enlaza al bloqueo. De lo contrario, BeginBindReclaimedLock o EndBindReclaimedLock producen la excepción InstanceHandleConflictException. Si los comandos están en curso en otros identificadores, la operación puede no completarse mientras espera el resultado de esos comandos para decidir si el bloqueo se puede reclamar.

El identificador de instancia actual se debe enlazar al propietario de un bloqueo y una instancia. No se debe completar la instancia. El token de bloqueo asociado al propietario del bloqueo se utiliza para identificar a este.

Una vez enlazado un bloqueo a un identificador, sigue estando enlazado durante la vigencia de este. No se pueden cambiar ni el token de bloqueo ni la versión de la instancia.

Se aplica a