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

◆ Add()

int System.Transactions.TransactionTable.Add ( InternalTransaction txNew)
inlinepackage

Definition at line 58 of file TransactionTable.cs.

59 {
60 int num = 0;
61 num = _rwLock.EnterReadLock();
62 try
63 {
64 if (txNew.AbsoluteTimeout != long.MaxValue && !_timerEnabled)
65 {
67 {
68 throw TransactionException.CreateInvalidOperationException(TraceSourceType.TraceSourceLtm, System.SR.UnexpectedTimerFailure, null);
69 }
70 _lastTimerTime = DateTime.UtcNow.Ticks;
71 _timerEnabled = true;
72 }
73 txNew.CreationTime = CurrentTime;
74 AddIter(txNew);
75 return num;
76 }
77 finally
78 {
80 }
81 }
static string UnexpectedTimerFailure
Definition SR.cs:74
Definition SR.cs:7
bool Change(int dueTime, int period)
Definition Timer.cs:131
void AddIter(InternalTransaction txNew)
readonly CheapUnfairReaderWriterLock _rwLock

References System.Transactions.TransactionTable._lastTimerTime, System.Transactions.TransactionTable._rwLock, System.Transactions.TransactionTable._timer, System.Transactions.TransactionTable._timerEnabled, System.Transactions.TransactionTable._timerInterval, System.Transactions.InternalTransaction.AbsoluteTimeout, System.Transactions.TransactionTable.AddIter(), System.Threading.Timer.Change(), System.Transactions.TransactionException.CreateInvalidOperationException(), System.Transactions.TransactionTable.CurrentTime, System.Transactions.CheapUnfairReaderWriterLock.EnterReadLock(), System.Transactions.CheapUnfairReaderWriterLock.ExitReadLock(), System.SR.UnexpectedTimerFailure, and System.DateTime.UtcNow.