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

◆ EnlistVolatile() [1/2]

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

Reimplemented from System.Transactions.TransactionState.

Definition at line 13 of file TransactionStatePromotedBase.cs.

14 {
15 Monitor.Exit(tx);
16 try
17 {
18 Enlistment enlistment = new Enlistment(enlistmentNotification, tx, atomicTransaction);
19 EnlistmentState.EnlistmentStatePromoted.EnterState(enlistment.InternalEnlistment);
20 enlistment.InternalEnlistment.PromotedEnlistment = tx.PromotedTransaction.EnlistVolatile(enlistment.InternalEnlistment, enlistmentOptions);
21 return enlistment;
22 }
23 finally
24 {
25 Monitor.Enter(tx);
26 }
27 }
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.