Skip to content
Snippets Groups Projects
  • Florian Fischer's avatar
    9b949e49
    Make LockedUnboundedQueue implementation configurable · 9b949e49
    Florian Fischer authored
    Available implementations configurations through the meson option
    'locked_unbounded_queue_implementation' are:
    
    mutex - our current LockedUnboundedQueue implementation using std::mutex
    
    rwlock - An implementation with pthread_rwlock. The implementations tries
             to upgrade its rdlock and drops and acquires a wrlock on failure
    
    shared_mutex - An implementation using std::shared_mutex.
             dequeue() acquires a shared lock at first, drops it and
             acquires a unique lock
    
    boost_shared_mutex - An implementation using boost::shared_mutex.
             dequeue() acquires an upgradable lock and upgrade it
             to a unique lock if necessary
    9b949e49
    History
    Make LockedUnboundedQueue implementation configurable
    Florian Fischer authored
    Available implementations configurations through the meson option
    'locked_unbounded_queue_implementation' are:
    
    mutex - our current LockedUnboundedQueue implementation using std::mutex
    
    rwlock - An implementation with pthread_rwlock. The implementations tries
             to upgrade its rdlock and drops and acquires a wrlock on failure
    
    shared_mutex - An implementation using std::shared_mutex.
             dequeue() acquires a shared lock at first, drops it and
             acquires a unique lock
    
    boost_shared_mutex - An implementation using boost::shared_mutex.
             dequeue() acquires an upgradable lock and upgrade it
             to a unique lock if necessary