8 writes to _currentOp
System.Collections.Concurrent (8)
System\Collections\Concurrent\ConcurrentBag.cs (8)
723Interlocked.Exchange(ref _currentOp, Operation.Add); 730_currentOp = Operation.None; // set back to None temporarily to avoid a deadlock 746Interlocked.Exchange(ref _currentOp, Operation.Add); // ensure subsequent reads aren't reordered before this 775_currentOp = Operation.None; // set back to None to avoid a deadlock 827_currentOp = Operation.None; 871_currentOp = Operation.Take; 892_currentOp = Operation.None; // set back to None to avoid a deadlock 917_currentOp = Operation.None;
4 references to _currentOp
System.Collections.Concurrent (4)
System\Collections\Concurrent\ConcurrentBag.cs (4)
625if (queue._currentOp != Operation.None) 629while (queue._currentOp != Operation.None); 972if ((head - (_tailIndex - 2) >= 0) && _currentOp == Operation.Add) 979while (_currentOp == Operation.Add);