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

◆ EnterState()

override void System.Transactions.TransactionStatePromotedNonMSDTCPhase0.EnterState ( InternalTransaction tx)
inlinepackage

Definition at line 5 of file TransactionStatePromotedNonMSDTCPhase0.cs.

6 {
8 int volatileEnlistmentCount = tx._phase0Volatiles._volatileEnlistmentCount;
9 int dependentClones = tx._phase0Volatiles._dependentClones;
10 tx._phase0VolatileWaveCount = volatileEnlistmentCount;
11 if (tx._phase0Volatiles._preparedVolatileEnlistments < volatileEnlistmentCount + dependentClones)
12 {
13 for (int i = 0; i < volatileEnlistmentCount; i++)
14 {
15 tx._phase0Volatiles._volatileEnlistments[i]._twoPhaseState.ChangeStatePreparing(tx._phase0Volatiles._volatileEnlistments[i]);
16 if (!tx.State.ContinuePhase0Prepares())
17 {
18 break;
19 }
20 }
21 }
22 else
23 {
24 TransactionState.TransactionStatePromotedNonMSDTCVolatilePhase1.EnterState(tx);
25 }
26 }
void CommonEnterState(InternalTransaction tx)

References System.Transactions.VolatileEnlistmentSet._dependentClones, System.Transactions.InternalTransaction._phase0Volatiles, System.Transactions.VolatileEnlistmentSet._preparedVolatileEnlistments, System.Transactions.InternalEnlistment._twoPhaseState, System.Transactions.VolatileEnlistmentSet._volatileEnlistmentCount, System.Transactions.VolatileEnlistmentSet._volatileEnlistments, System.Transactions.EnlistmentState.ChangeStatePreparing(), System.Transactions.TransactionState.CommonEnterState(), System.Transactions.TransactionState.ContinuePhase0Prepares(), System.Transactions.InternalTransaction.State, and System.Transactions.TransactionState.TransactionStatePromotedNonMSDTCVolatilePhase1.