74 if (_closed && (((_head - _tail) & _mask) == 0))
79 if (((_head - _tail) & _mask) != 0)
81 item = std::move(_ring[_tail++ & _mask]);
86 _cv1.Wait(_cs, [
this]() {
return (_closed || (((_head - _tail) & _mask) != 0)); });
88 }
while (!_closed || (((_head - _tail) & _mask) != 0));