Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches

◆ EnlistVolatile() [2/2]

override Enlistment System.Transactions.TransactionStatePromotedBase.EnlistVolatile ( InternalTransaction tx,
ISinglePhaseNotification enlistmentNotification,
EnlistmentOptions enlistmentOptions,
Transaction atomicTransaction )
inlinepackagevirtualinherited

Reimplemented from System.Transactions.TransactionState.

Definition at line 29 of file TransactionStatePromotedBase.cs.

30 {
31 Monitor.Exit(tx);
32 try
33 {
34 Enlistment enlistment = new Enlistment(enlistmentNotification, tx, atomicTransaction);
35 EnlistmentState.EnlistmentStatePromoted.EnterState(enlistment.InternalEnlistment);
36 enlistment.InternalEnlistment.PromotedEnlistment = tx.PromotedTransaction.EnlistVolatile(enlistment.InternalEnlistment, enlistmentOptions);
37 return enlistment;
38 }
39 finally
40 {
41 Monitor.Enter(tx);
42 }
43 }
static void Exit(object obj)
static void Enter(object obj)

References System.Transactions.EnlistmentState.EnlistmentStatePromoted, System.Transactions.Distributed.DistributedTransaction.EnlistVolatile(), System.Threading.Monitor.Enter(), System.Threading.Monitor.Exit(), System.Transactions.Enlistment.InternalEnlistment, and System.Transactions.InternalTransaction.PromotedTransaction.