Partager via


InstancePersistenceContext.BeginBindReclaimedLock Méthode

Définition

Commence une opération asynchrone pour lier un verrou existant sur une instance au handle d'instance actuel. La version du verrou existant est passée comme un paramètre.

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

Paramètres

instanceVersion
Int64

Version du verrou maintenu sur l'instance, ou zéro si le fournisseur de persistance n'implémente pas de versions de verrou.

timeout
TimeSpan

Délai d'attente de l'opération asynchrone.

callback
AsyncCallback

Méthode à appeler lorsque l'opération est terminée.

state
Object

Informations d'état associées à l'opération asynchrone.

Retours

État d'une opération asynchrone.

Remarques

Lors de la tentative d'acquisition d'un verrou, le fournisseur de persistance peut décider que l'instance actuelle est déjà verrouillée dans le magasin actuel. Si le jeton de verrou correspond au jeton de verrouillage du handle actuel, le fournisseur de persistance peut tenter de récupérer le verrou en inspectant sa version et en le transmettant à BeginBindReclaimedLock. Le fournisseur de persistance ne doit pas apporter de modifications à l'instance tant que le verrou n'a pas été récupéré avec succès. Si aucun autre handle n'est lié au verrou, l'opération BeginBindReclaimedLock réussit et le handle actuel est lié au verrou. Sinon, BeginBindReclaimedLock ou EndBindReclaimedLock lève l'exception InstanceHandleConflictException. Si des commandes sont en cours sur d'autres handles, il est possible que l'opération ne s'achève pas tant que le résultat de ces commandes n'est pas obtenu pour décider si le verrou peut être récupéré.

Le handle d'instance actuel doit être lié à un propriétaire d'instance et à un propriétaire de verrou. L'instance ne doit pas être terminée. Le lock-token associé au propriétaire de verrou est utilisé pour identifier le propriétaire du verrou.

Lorsqu'un verrou est lié à un handle, il le reste pour la durée de vie du handle. Ni le lock-token ni la version d'instance ne peuvent être modifiés.

S’applique à