InstancePersistenceContext.BindReclaimedLock(Int64, TimeSpan) Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Associa um bloqueio existente em uma instância ao identificador de instância atual. A versão do bloqueio existente é passada como um parâmetro.
public:
void BindReclaimedLock(long instanceVersion, TimeSpan timeout);
public void BindReclaimedLock (long instanceVersion, TimeSpan timeout);
member this.BindReclaimedLock : int64 * TimeSpan -> unit
Public Sub BindReclaimedLock (instanceVersion As Long, timeout As TimeSpan)
Parâmetros
- instanceVersion
- Int64
Versão do bloqueio mantido na instância ou zero se o provedor de persistência não implementar versões de bloqueio.
- timeout
- TimeSpan
O valor de tempo limite da chave para a operação.
Comentários
Ao tentar adquirir um bloqueio, o provedor de persistência pode decidir que a instância atual já está bloqueada no repositório atual. Se o token de bloqueio corresponder ao token de bloqueio do identificador atual, o provedor de persistência poderá tentar recuperar o bloqueio inspecionando sua versão e passando-o para BindReclaimedLock. O provedor de persistência não deve fazer alterações na instância até que o bloqueio seja recuperado com êxito. Se nenhum outro identificador estiver associado ao bloqueio, BindReclaimedLock terá êxito e o identificador atual ficará associado ao bloqueio. Caso contrário, BindReclaimedLock lançará InstanceHandleConflictException. Se os comandos estiverem em andamento em outros identificadores, BindReclaimedLock poderá bloquear a espera pelo resultado desses comandos antes de decidir se o bloqueio pode ser recuperado.
O identificador de instância atual deve ser associado a uma instância e um proprietário de bloqueio. A instância não deve ser concluída. O token de bloqueio associado ao proprietário do bloqueio é usado para identificar o proprietário do bloqueio.
Depois que um bloqueio é associado a um identificador, ele permanece associado durante o tempo de vida do identificador. Nem o token de bloqueio nem a versão da instância podem ser alterados.