2 writes to _last
System.Private.CoreLib (2)
src\libraries\Common\src\System\Collections\Concurrent\SingleProducerSingleConsumerQueue.cs (2)
89
segment._state.
_last
= tail2;
116
newSegment._state.
_last
= 1;
14 references to _last
System.Private.CoreLib (14)
src\libraries\Common\src\System\Collections\Concurrent\SingleProducerSingleConsumerQueue.cs (14)
82
int last = segment._state.
_last
; // local copy to avoid multiple volatile reads
182
if (segment._state.
_last
!= segment._state._lastCopy)
184
segment._state._lastCopy = segment._state.
_last
;
190
if (segment._next != null && segment._state._first == segment._state.
_last
)
199
if (first == segment._state.
_last
)
210
segment._state._lastCopy = segment._state.
_last
; // Refresh _lastCopy to ensure that _first has not passed _lastCopy
256
if (segment._state.
_last
!= segment._state._lastCopy)
258
segment._state._lastCopy = segment._state.
_last
;
262
if (segment._next != null && segment._state._first == segment._state.
_last
)
271
if (first == segment._state.
_last
)
282
segment._state._lastCopy = segment._state.
_last
; // Refresh _lastCopy to ensure that _first has not passed _lastCopy
310
if (head._state._first != head._state.
_last
)
326
pt != segment._state.
_last
;
351
last = segment._state.
_last
;