|
| ConcurrentQueue () noexcept(std::is_nothrow_default_constructible_v< Container >)=default |
|
| ConcurrentQueue (ConcurrentQueue &&other) noexcept(std::is_nothrow_move_constructible_v< Container > &&noexcept(std::scoped_lock(mutex_))) |
|
template<class Alloc , class = std::enable_if_t<std::uses_allocator_v<Container, Alloc>>> |
| ConcurrentQueue (ConcurrentQueue &&other, const Alloc &alloc) noexcept(std::is_nothrow_constructible_v< Container, Container, const Alloc & > &&noexcept(std::scoped_lock(mutex_))) |
|
template<class Alloc , class = std::enable_if_t<std::uses_allocator_v<Container, Alloc>>> |
| ConcurrentQueue (const Alloc &alloc) noexcept(std::is_nothrow_constructible_v< Container, const Alloc & >) |
|
| ConcurrentQueue (const ConcurrentQueue &other) noexcept(std::is_nothrow_copy_constructible_v< Container > &&noexcept(std::scoped_lock(mutex_))) |
|
template<class Alloc , class = std::enable_if_t<std::uses_allocator_v<Container, Alloc>>> |
| ConcurrentQueue (const ConcurrentQueue &other, const Alloc &alloc) |
|
| ConcurrentQueue (const Container &cont) noexcept(std::is_nothrow_copy_constructible_v< Container >) |
|
template<class Alloc , class = std::enable_if_t<std::uses_allocator_v<Container, Alloc>>> |
| ConcurrentQueue (const Container &cont, const Alloc &alloc) |
|
| ConcurrentQueue (Container &&cont) noexcept(std::is_nothrow_move_constructible_v< Container >) |
|
template<class Alloc , class = std::enable_if_t<std::uses_allocator_v<Container, Alloc>>> |
| ConcurrentQueue (Container &&cont, const Alloc &alloc) noexcept(std::is_nothrow_constructible_v< Container, Container, const Alloc & >) |
|
| ~ConcurrentQueue ()=default |
|
void | clear () noexcept(std::is_nothrow_default_constructible_v< Container > &&std::is_nothrow_destructible_v< Container > &&std::is_nothrow_swappable_v< Container > &&noexcept(std::scoped_lock(mutex_))) |
|
size_type | clear_count () noexcept(std::is_nothrow_default_constructible_v< Container > &&std::is_nothrow_destructible_v< Container > &&std::is_nothrow_swappable_v< Container > &&noexcept(queue_.size()) &&noexcept(std::scoped_lock(mutex_))) |
|
template<class... Args> |
auto | clear_count_emplace (Args &&... args) |
|
size_type | clear_count_push (const T &value) |
|
size_type | clear_count_push (T &&value) |
|
template<class... Args> |
void | emplace (Args &&... args) |
|
auto | empty () const noexcept(noexcept(queue_.empty()) &&noexcept(std::scoped_lock(mutex_))) |
|
size_type | max_size () const noexcept(noexcept(queue_.max_size()) &&noexcept(std::scoped_lock(mutex_))) |
|
ConcurrentQueue & | operator= (ConcurrentQueue &&other) noexcept(std::is_nothrow_move_assignable_v< Container > &&noexcept(std::scoped_lock(mutex_))) |
|
ConcurrentQueue & | operator= (const ConcurrentQueue &other) noexcept(std::is_nothrow_copy_assignable_v< Container > &&noexcept(std::scoped_lock(mutex_))) |
|
T | pop () |
|
void | push (const T &value) |
|
void | push (T &&value) |
|
void | resize (size_type count) |
|
void | resize (size_type count, const value_type &value) |
|
size_type | size () const noexcept(noexcept(queue_.size()) &&noexcept(std::scoped_lock(mutex_))) |
|
void | swap (ConcurrentQueue &other) noexcept(std::is_nothrow_swappable_v< Container > &&noexcept(std::scoped_lock(mutex_))) |
|
std::optional< T > | try_pop () |
|