| 3722 | |
| 3723 | template<typename T, typename Traits> |
| 3724 | ConsumerToken::ConsumerToken(ConcurrentQueue<T, Traits>& queue) |
| 3725 | : itemsConsumedFromCurrent(0), currentProducer(nullptr), desiredProducer(nullptr) |
| 3726 | { |
| 3727 | initialOffset = queue.nextExplicitConsumerId.fetch_add(1, std::memory_order_release); |
| 3728 | lastKnownGlobalOffset = static_cast<std::uint32_t>(-1); |
| 3729 | } |
| 3730 | |
| 3731 | template<typename T, typename Traits> |
| 3732 | ConsumerToken::ConsumerToken(BlockingConcurrentQueue<T, Traits>& queue) |