Condividi tramite


Deadlock

Un deadlock può verificarsi quando due connessioni si bloccano a vicenda. Per ulteriori informazioni, vedere la documentazione online di SQL Server.

Diversamente da Microsoft SQL Server, in Microsoft SQL Server Compact 4.0 non è disponibile il rilevamento deadlock. In SQL Server Compact 4.0 il deadlock viene quindi gestito tramite il timeout del blocco. Se una transazione tenta di applicare un blocco a una risorsa ma non riesce a eseguire tale operazione entro il timeout del blocco, si verifica un errore. Il blocco del timeout assicura che una transazione non rimanga indefinitamente in attesa di una risorsa impegnata da un'altra transazione. Il valore del timeout del blocco può essere modificato. Per ulteriori informazioni, vedere Timeout di blocco.

Se due transazioni sono coinvolte in un deadlock, si verifica il timeout di una delle transazioni in attesa della risorsa e viene generato un errore. La transazione di cui si è verificato il timeout è ancora attiva e non ne viene eseguito il commit o il rollback. L'altra transazione acquisisce quindi il blocco necessario e continua.

Per ulteriori informazioni, vedere la documentazione online di SQL Server.

Vedere anche

Concetti

Nozioni fondamentali sul blocco

Informazioni sul blocco

Livello di isolamento della transazione

Hint di blocco