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

◆ PromotePhaseVolatiles()

bool System.Transactions.TransactionStatePromoted.PromotePhaseVolatiles ( InternalTransaction tx,
ref VolatileEnlistmentSet volatiles,
bool phase0 )
inlineprotected

Definition at line 72 of file TransactionStatePromoted.cs.

73 {
74 if (volatiles._volatileEnlistmentCount + volatiles._dependentClones > 0)
75 {
76 if (phase0)
77 {
78 volatiles.VolatileDemux = new Phase0VolatileDemultiplexer(tx);
79 }
80 else
81 {
82 volatiles.VolatileDemux = new Phase1VolatileDemultiplexer(tx);
83 }
84 volatiles.VolatileDemux._promotedEnlistment = tx.PromotedTransaction.EnlistVolatile(volatiles.VolatileDemux, phase0 ? EnlistmentOptions.EnlistDuringPrepareRequired : EnlistmentOptions.None);
85 }
86 return true;
87 }

References System.Transactions.Distributed.DistributedTransaction.EnlistVolatile(), and System.Transactions.InternalTransaction.PromotedTransaction.

Referenced by System.Transactions.TransactionStatePromoted.PromoteEnlistmentsAndOutcome().