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

◆ EnlistVolatile() [2/2]

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

Reimplemented from System.Transactions.TransactionState.

Definition at line 63 of file TransactionStatePhase0.cs.

64 {
65 Enlistment enlistment = new Enlistment(tx, enlistmentNotification, enlistmentNotification, atomicTransaction, enlistmentOptions);
66 if ((enlistmentOptions & EnlistmentOptions.EnlistDuringPrepareRequired) != 0)
67 {
68 AddVolatileEnlistment(ref tx._phase0Volatiles, enlistment);
69 }
70 else
71 {
72 AddVolatileEnlistment(ref tx._phase1Volatiles, enlistment);
73 }
74 TransactionsEtwProvider log = TransactionsEtwProvider.Log;
75 if (log.IsEnabled())
76 {
77 log.TransactionstateEnlist(enlistment.InternalEnlistment.EnlistmentTraceId, EnlistmentType.Volatile, enlistmentOptions);
78 }
79 return enlistment;
80 }
void AddVolatileEnlistment(ref VolatileEnlistmentSet enlistments, Enlistment enlistment)

References System.Transactions.InternalTransaction._phase0Volatiles, System.Transactions.InternalTransaction._phase1Volatiles, System.Transactions.TransactionState.AddVolatileEnlistment(), System.Transactions.InternalEnlistment.EnlistmentTraceId, System.Transactions.Enlistment.InternalEnlistment, System.Diagnostics.Tracing.EventSource.IsEnabled(), System.Transactions.TransactionsEtwProvider.Log, and System.Transactions.TransactionsEtwProvider.TransactionstateEnlist().