Enlistment.Done Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Indique que le participant à la transaction a terminé son travail.
public:
void Done();
public void Done ();
member this.Done : unit -> unit
Public Sub Done ()
Remarques
Pendant la phase finale de la validation de transaction, le gestionnaire de transactions appelle la Commitméthode ou RollbackInDoubt du participant, selon que la transaction doit être validée ou restaurée. Le gestionnaire de ressources doit effectuer tout le travail nécessaire pour terminer la transaction, puis informer le gestionnaire de transactions qu’elle a terminé en appelant la Done méthode sur le enlistment
paramètre.
Si le gestionnaire de ressources s’est inscrit durablement, mais ne répond pas en appelant Done la méthode, le gestionnaire de transactions n’est pas sûr que le gestionnaire de ressources a reçu l’appel de notification correspondant. Par conséquent, le gestionnaire de transactions attend toujours une réponse et conserve les informations pertinentes pour cette transaction. Si Done n’est jamais appelé, cette information est conservée indéfiniment en mémoire ou dans une ressource à l’échelle du système. Il en résulte que les ressources ne peuvent pas être récupérées. Dans le cas d’une transaction distribuée, cela peut éventuellement remplir le journal MSDTC, ce qui arrête le processus MSDTC. Dans le cas d’une transaction gérée par System.Transactions, cela entraîne une augmentation progressive et continue de la consommation de mémoire du processus du gestionnaire de ressources. Par conséquent, il est essentiel d’appeler la Done méthode une fois que votre gestionnaire de ressources a terminé votre travail de préparation.
Un enrôlement peut appeler la Done méthode à tout moment avant d’avoir appelé Prepared dans la phase de préparation. Ce faisant, l’enrôlement vote en lecture seule, ce qui signifie qu’il vote sur la transaction, mais qu’il n’a pas besoin de recevoir le résultat final. Notez qu’une fois cette méthode appelée, le participant inscrit ne reçoit plus de notifications du gestionnaire de transactions.