![]() |
UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
|
#include <concurrent_queue.hpp>


Public Member Functions | |
| T | force_push (T item) |
| template<typename Rep , typename Period > | |
| T | timed_pop (std::chrono::duration< Rep, Period > timeout) |
| T | try_pop () |
| bool | try_push (T item) |
| T | wait_pop () |
| void | wait_push (T item) |
Private Member Functions | |
| T | pop (bool nonblocking=false) |
| void | push_and_unlock (std::unique_lock< std::mutex > &lock, T &&item) |
Private Attributes | |
| std::mutex | mutex {} |
| std::queue< T > | queue |
| std::condition_variable | queue_decremented_cv {} |
| std::condition_variable | queue_incremented_cv {} |
Definition at line 51 of file concurrent_queue.hpp.
|
inline |
Definition at line 103 of file concurrent_queue.hpp.
References vulkan_display_detail::ConcurrentQueue< T, max_size >::push_and_unlock().

|
inlineprivate |
Definition at line 63 of file concurrent_queue.hpp.
References vulkan_display_detail::ConcurrentQueue< T, max_size >::queue_decremented_cv, and vulkan_display_detail::ConcurrentQueue< T, max_size >::queue_incremented_cv.
Referenced by vulkan_display_detail::ConcurrentQueue< T, max_size >::try_pop(), and vulkan_display_detail::ConcurrentQueue< T, max_size >::wait_pop().
|
inlineprivate |
Definition at line 57 of file concurrent_queue.hpp.
References vulkan_display_detail::ConcurrentQueue< T, max_size >::queue_incremented_cv.
Referenced by vulkan_display_detail::ConcurrentQueue< T, max_size >::force_push(), vulkan_display_detail::ConcurrentQueue< T, max_size >::try_push(), and vulkan_display_detail::ConcurrentQueue< T, max_size >::wait_push().
|
inline |
Definition at line 88 of file concurrent_queue.hpp.
References vulkan_display_detail::ConcurrentQueue< T, max_size >::queue_decremented_cv, and vulkan_display_detail::ConcurrentQueue< T, max_size >::queue_incremented_cv.
|
inline |
Definition at line 79 of file concurrent_queue.hpp.
References vulkan_display_detail::ConcurrentQueue< T, max_size >::pop().

|
inline |
Definition at line 114 of file concurrent_queue.hpp.
References vulkan_display_detail::ConcurrentQueue< T, max_size >::push_and_unlock().

|
inline |
Definition at line 83 of file concurrent_queue.hpp.
References vulkan_display_detail::ConcurrentQueue< T, max_size >::pop().

|
inline |
Definition at line 123 of file concurrent_queue.hpp.
References vulkan_display_detail::ConcurrentQueue< T, max_size >::push_and_unlock(), vulkan_display_detail::ConcurrentQueue< T, max_size >::queue_decremented_cv, and vulkan_display_detail::unlimited_size.

|
mutableprivate |
Definition at line 53 of file concurrent_queue.hpp.
|
private |
Definition at line 52 of file concurrent_queue.hpp.
|
private |
Definition at line 54 of file concurrent_queue.hpp.
Referenced by vulkan_display_detail::ConcurrentQueue< T, max_size >::pop(), vulkan_display_detail::ConcurrentQueue< T, max_size >::timed_pop(), and vulkan_display_detail::ConcurrentQueue< T, max_size >::wait_push().
|
private |
Definition at line 55 of file concurrent_queue.hpp.
Referenced by vulkan_display_detail::ConcurrentQueue< T, max_size >::pop(), vulkan_display_detail::ConcurrentQueue< T, max_size >::push_and_unlock(), and vulkan_display_detail::ConcurrentQueue< T, max_size >::timed_pop().