Enlistment.Done Metodo

Definizione

Indica che il partecipante della transazione ha completato il lavoro.

public:
 void Done();
public void Done();
member this.Done : unit -> unit
Public Sub Done ()

Commenti

Durante la fase finale del commit della transazione, il gestore delle transazioni chiama il Commitmetodo o RollbackInDoubt del partecipante, a seconda che la transazione venga sottoposta a commit o rollback. Il gestore delle risorse deve eseguire qualsiasi operazione necessaria per completare la transazione e quindi informare il gestore delle transazioni che è stato completato chiamando il Done metodo sul enlistment parametro .

Se resource manager è stato inserito in modo permanente, ma non risponde chiamando Done il metodo, il gestore delle transazioni non è sicuro che gestione risorse abbia ricevuto la rispettiva chiamata di notifica. Di conseguenza, gestione transazioni continua ad attendere una risposta e mantiene le informazioni rilevanti per questa transazione. Se Done non viene mai chiamato, queste informazioni vengono mantenute per un tempo indefinito in memoria o in una risorsa a livello di sistema. Ciò comporta la mancata recupero delle risorse. Nel caso di una transazione distribuita, questo potrebbe eventualmente riempire il log MSDTC, che interrompe il processo MSDTC. Nel caso di una transazione gestita da System.Transactions, questo comporta un aumento graduale e continuo del consumo di memoria del processo del gestore risorse. Pertanto, è fondamentale chiamare il Done metodo dopo che il gestore risorse è stato completato con il lavoro di preparazione.

Un'integrazione può chiamare il Done metodo in qualsiasi momento prima che venga chiamato Prepared nella fase di preparazione. In questo modo, l'integrazione sta eseguendo il cast di un voto di sola lettura, vale a dire che vota commit per la transazione, ma non deve ricevere il risultato finale. Si noti che, dopo aver chiamato questo metodo, il partecipante incluso non riceve ulteriori notifiche dal gestore transazioni.

Si applica a

Vedi anche