IEnlistmentNotification.Commit(Enlistment) Yöntem

Tanım

Listelenmiş bir nesneye bir işlemin işlendiğini bildirir.

public:
 void Commit(System::Transactions::Enlistment ^ enlistment);
public void Commit(System.Transactions.Enlistment enlistment);
abstract member Commit : System.Transactions.Enlistment -> unit
Public Sub Commit (enlistment As Enlistment)

Parametreler

enlistment
Enlistment

Enlistment İşlem yöneticisine yanıt göndermek için kullanılan nesne.

Açıklamalar

İşlem yöneticisi, bir taahhüdün ikinci aşamasında, tüm katılımcılara işlemi işlemelerini bildirirken bu listelenmiş nesne yöntemini çağırır.

Kaynak yöneticisi işlemi tamamlamak için gereken tüm işleri gerçekleştirmeli ve ardından parametresinde Done yöntemini çağırarak enlistment TM'ye tamamlandığını bildirmelidir.

Kaynak yöneticisi sabit bir şekilde kaydolduysa ancak yöntemini çağırarak Done yanıt vermiyorsa, işlem yöneticisi kaynak yöneticisinin çağrıyı aldığından Commit emin değildir. Bu nedenle, işlem yöneticisi yanıt beklemeye devam eder ve bu işlemle ilgili bilgileri korur. Hiçbir zaman çağrılmazsa Done , bu bilgi parçası süresiz olarak bellekte veya sistem genelindeki bir kaynakta tutulur. Bu, kaynakların geri alınamamasına neden olur. Dağıtılmış işlem söz konusu olduğunda, bu işlem sonunda MSDTC günlüğünü doldurabilir ve bu da MSDTC işlemini durdurur. tarafından System.Transactionsyönetilen bir işlem söz konusu olduğunda, bu durum kaynak yöneticisinin işleminin bellek tüketiminde aşamalı ve sürekli bir artışa neden olur. Bu nedenle, kaynak yöneticiniz hazırlama çalışmanızı tamamladıktan sonra yöntemini çağırmanız Done çok önemlidir.

Şunlara uygulanır