Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
System.Threading.SemaphoreSlim Class Reference

Classes

struct  ConfiguredNoThrowAwaiter
 
class  TaskNode
 

Public Member Functions

 SemaphoreSlim (int initialCount)
 
 SemaphoreSlim (int initialCount, int maxCount)
 
void Wait ()
 
void Wait (CancellationToken cancellationToken)
 
bool Wait (TimeSpan timeout)
 
bool Wait (TimeSpan timeout, CancellationToken cancellationToken)
 
bool Wait (int millisecondsTimeout)
 
bool Wait (int millisecondsTimeout, CancellationToken cancellationToken)
 
Task WaitAsync ()
 
Task WaitAsync (CancellationToken cancellationToken)
 
Task< boolWaitAsync (int millisecondsTimeout)
 
Task< boolWaitAsync (TimeSpan timeout)
 
Task< boolWaitAsync (TimeSpan timeout, CancellationToken cancellationToken)
 
Task< boolWaitAsync (int millisecondsTimeout, CancellationToken cancellationToken)
 
int Release ()
 
int Release (int releaseCount)
 
void Dispose ()
 

Protected Member Functions

virtual void Dispose (bool disposing)
 

Properties

int CurrentCount [get]
 
WaitHandle AvailableWaitHandle [get]
 

Private Member Functions

bool WaitUntilCountOrTimeout (int millisecondsTimeout, uint startTime, CancellationToken cancellationToken)
 
TaskNode CreateAndAddAsyncWaiter ()
 
bool RemoveAsyncWaiter (TaskNode task)
 
async Task< boolWaitUntilCountOrTimeoutAsync (TaskNode asyncWaiter, int millisecondsTimeout, CancellationToken cancellationToken)
 
void CheckDispose ()
 

Static Private Member Functions

static void CancellationTokenCanceledEventHandler (object obj)
 

Private Attributes

volatile int m_currentCount
 
readonly int m_maxCount
 
int m_waitCount
 
int m_countOfWaitersPulsedToWake
 
readonly StrongBox< boolm_lockObjAndDisposed
 
volatile ManualResetEvent m_waitHandle
 
TaskNode m_asyncHead
 
TaskNode m_asyncTail
 

Static Private Attributes

static readonly Action< object > s_cancellationTokenCanceledEventHandler = CancellationTokenCanceledEventHandler
 

Detailed Description

Definition at line 9 of file SemaphoreSlim.cs.


The documentation for this class was generated from the following file: