Tkrzw
|
Threading utilities. More...
#include <atomic>
#include <chrono>
#include <condition_variable>
#include <functional>
#include <queue>
#include <set>
#include <shared_mutex>
#include <string>
#include <string_view>
#include <thread>
#include <vector>
#include <cinttypes>
#include "tkrzw_lib_common.h"
#include "tkrzw_time_util.h"
Classes | |
class | tkrzw::SpinMutex |
Spin lock mutex. More... | |
class | tkrzw::SpinSharedMutex |
Spin lock shared mutex. More... | |
class | tkrzw::SpinWPSharedMutex |
Spin lock shared mutex, with write-preferring policy. More... | |
class | tkrzw::SlottedMutex< SHAREDMUTEX > |
Slotted shared mutex. More... | |
class | tkrzw::ScopedSlottedLock< SHAREDMUTEX > |
Scoped lock with a slotted shared mutex. More... | |
class | tkrzw::HashMutex< SHAREDMUTEX > |
Mutex for a hash table. More... | |
class | tkrzw::ScopedHashLock< SHAREDMUTEX > |
Scoped lock with a mutex for a hash table. More... | |
class | tkrzw::ScopedHashLockMulti< SHAREDMUTEX > |
Scoped lock with multiple mutexes for a hash table. More... | |
class | tkrzw::TaskQueue |
Task queue with a thread pool. More... | |
class | tkrzw::TaskQueue::Task |
Interface of a task. More... | |
class | tkrzw::TaskQueue::TaskWithLambda |
Task implementation with a lambda function. More... | |
class | tkrzw::WaitCounter |
Wait counter for monitoring other threads. More... | |
class | tkrzw::SignalBroker |
Broker to send a signal to another thread. More... | |
class | tkrzw::SignalBroker::Waiter |
Handler to wait for the signal. More... | |
class | tkrzw::KeySignalBroker< KEYTYPE > |
Broker to send a signal associated with a key to another thread. More... | |
class | tkrzw::KeySignalBroker< KEYTYPE >::Waiter |
Handler to wait for the signal. More... | |
class | tkrzw::SlottedKeySignalBroker< KEYTYPE > |
Slotted broker to send a signal associated with a key to another thread. More... | |
class | tkrzw::SlottedKeySignalBroker< KEYTYPE >::Waiter |
Handler to wait for the signal. More... | |
class | tkrzw::ScopedCounter< T > |
Scoped counter for auto increment and decrement. More... | |
Namespaces | |
tkrzw | |
Common namespace of Tkrzw. | |
Functions | |
void | tkrzw::SleepThread (double sec) |
Sleeps the current thread. More... | |
Threading utilities.