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

◆ GetHandles()

static List< WaitHandle > System.Collections.Concurrent.BlockingCollection< T >.GetHandles ( BlockingCollection< T >[] collections,
CancellationToken externalCancellationToken,
bool isAddOperation,
out CancellationToken[] cancellationTokens )
inlinestaticprivate

Definition at line 466 of file BlockingCollection.cs.

467 {
471 if (isAddOperation)
472 {
474 {
475 if (blockingCollection._freeNodes != null)
476 {
477 list.Add(blockingCollection._freeNodes.AvailableWaitHandle);
478 list2.Add(blockingCollection._producersCancellationTokenSource.Token);
479 }
480 }
481 }
482 else
483 {
484 for (int j = 0; j < collections.Length; j++)
485 {
487 {
490 }
491 }
492 }
493 cancellationTokens = list2.ToArray();
494 return list;
495 }
void Add(TKey key, TValue value)

References System.Collections.Concurrent.BlockingCollection< T >._consumersCancellationTokenSource, System.Collections.Concurrent.BlockingCollection< T >._occupiedNodes, System.Collections.Generic.Dictionary< TKey, TValue >.Add(), System.Threading.SemaphoreSlim.AvailableWaitHandle, System.Collections.Concurrent.BlockingCollection< T >.IsCompleted, System.list, and System.Threading.CancellationTokenSource.Token.

Referenced by System.Collections.Concurrent.BlockingCollection< T >.TryAddToAnyCore(), and System.Collections.Concurrent.BlockingCollection< T >.TryTakeFromAnyCoreSlow().