1 write to _slots
MSBuildTaskHost (1)
Concurrent\ConcurrentQueue.cs (1)
299
_slots
= new Slot[boundedLength];
14 references to _slots
MSBuildTaskHost (14)
Concurrent\ConcurrentQueue.cs (14)
316
for (int i = 0; i <
_slots
.Length; i++)
318
_slots
[i].SequenceNumber = i;
323
internal int Capacity =>
_slots
.Length;
326
internal int FreezeOffset =>
_slots
.Length * 2;
373
int sequenceNumber = Thread.VolatileRead(ref
_slots
[slotsIndex].SequenceNumber);
392
item =
_slots
[slotsIndex].Item;
398
_slots
[slotsIndex].Item = default(T);
399
Thread.VolatileWrite(ref
_slots
[slotsIndex].SequenceNumber, currentHead +
_slots
.Length);
452
int sequenceNumber = Thread.VolatileRead(ref
_slots
[slotsIndex].SequenceNumber);
459
result = resultUsed ?
_slots
[slotsIndex].Item : default(T);
504
int sequenceNumber = Thread.VolatileRead(ref
_slots
[slotsIndex].SequenceNumber);
523
_slots
[slotsIndex].Item = item;
524
Thread.VolatileWrite(ref
_slots
[slotsIndex].SequenceNumber, currentTail + 1);