Aracılığıyla paylaş


Kilitlenmeleri işleme

When an instance of the Microsoft SQL Server Database Engine chooses a transaction as a deadlock victim, it terminates the current batch, rolls back the transaction, and returns error message 1205 to the application.

Your transaction (process ID #52) was deadlocked on {lock | communication buffer | thread} resources with another process and has been chosen as the deadlock victim. Rerun your transaction.

Çünkü uygulama gönderiliyor Transact-SQL sorgular, çıkmaz kurban olarak, uygulamaları hata iletisi 1205 yakalayabilir bir hata işleyicisi olmalıdır seçilebilir. Uygulamayı bir uygulama hata yakalamaz, alt işlem geri alındı ve hatalar oluşabilir unaware devam edebilirsiniz.

Hata iletisi 1205 yakalar bir hata işleyicisi uygulama çıkmaz durumu ve remedial eylem (örneğin, otomatik olarak çıkmaz söz konusu sorgu resubmitting) için bir uygulama sağlar.Sorguyu otomatik olarak resubmitting tarafından kullanıcı çıkmaz ortaya çıktığını bilmeniz gerekmez.

Uygulama, sorgu resubmitting kısa bir süre önce duraklatın.Bu, diğer hareketi tamamlamak ve çıkmaz döngüsünün bir parçası olarak biçimlendirilmiş, kilitlerin serbest bırakma olanağı kilitlenmeyle ilgili sağlar.Bu, kilitlerin resubmitted sorgu istediğinde, yinelemeler çıkmaz olasılığını azaltır.