Sdílet prostřednictvím


IEnlistmentNotification.Rollback(Enlistment) Metoda

Definice

Oznámí zařazený objekt, že transakce je vrácena zpět (přerušeno).

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

Parametry

enlistment
Enlistment

Objekt Enlistment slouží k odeslání odpovědi do správce transakcí.

Poznámky

Správce transakcí volá tuto metodu zařazení objektu, když je transakce vrácena zpět (přerušeno) z důvodu neschopnosti jednoho nebo více účastníků transakce potvrdit transakci.

Správce prostředků by měl provést veškeré práce potřebné k dokončení transakce a poté informovat správce prostředků, že byla dokončena voláním Done metody parametru enlistment .

Pokud správce prostředků obsahuje trvale, ale nereaguje voláním Done metody, správce transakcí si není jistý, zda správce prostředků přijal Rollback volání. Jako takový správce transakcí stále čeká na odpověď a udržuje informace relevantní pro tuto transakci. Pokud Done se nikdy nevolá, tato informace se uchovává po neomezenou dobu v paměti nebo v systémovém prostředku. To vede k tomu, že prostředky není možné uvolnit. V případě distribuované transakce by to mohlo nakonec zaplnit protokol MSDTC, který zastaví proces MSDTC. V případě transakce spravované nástrojem System.Transactionsto vede k postupnému a neustálému zvyšování spotřeby paměti procesem správce prostředků. Proto je velmi důležité, abyste volali metodu Done , jakmile správce prostředků dokončí práci na přípravě.

Platí pro