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

◆ Clear()

Definition at line 631 of file ConcurrentBag.cs.

632 {
633 if (_workStealingQueues == null)
634 {
635 return;
636 }
639 {
642 {
643 return;
644 }
645 }
646 bool lockTaken = false;
647 try
648 {
650 for (WorkStealingQueue workStealingQueue = _workStealingQueues; workStealingQueue != null; workStealingQueue = workStealingQueue._nextQueue)
651 {
652 T result;
653 while (workStealingQueue.TrySteal(out result, take: true))
654 {
655 }
656 }
657 }
658 finally
659 {
661 }
662 }
WorkStealingQueue GetCurrentThreadWorkStealingQueue(bool forceCreate)
volatile WorkStealingQueue _workStealingQueues

References System.Collections.Concurrent.ConcurrentBag< T >._workStealingQueues, System.Collections.Concurrent.ConcurrentBag< T >.FreezeBag(), System.Collections.Concurrent.ConcurrentBag< T >.GetCurrentThreadWorkStealingQueue(), and System.Collections.Concurrent.ConcurrentBag< T >.UnfreezeBag().