18#pragma clang diagnostic ignored "-Wc++98-compat"
37 static_cast<int> (res),
38 "condition_variable::notify_one() failed");
50 static_cast<int> (res),
51 "condition_variable::notify_all() failed");
61 EPERM,
"condition_variable::wait: mutex not locked");
67 "condition_variable wait failed");
71#pragma GCC diagnostic push
73#pragma clang diagnostic ignored "-Wunused-parameter"
74#pragma clang diagnostic ignored "-Wmissing-noreturn"
75#elif defined(__GNUC__)
76#pragma GCC diagnostic ignored "-Wunused-parameter"
77#pragma GCC diagnostic ignored "-Wmissing-noreturn"
82 std::unique_lock<mutex> lk)
88#pragma GCC diagnostic pop
void wait(std::unique_lock< mutex > &lock)
void notify_one() noexcept
void notify_all() noexcept
result_t signal(void)
Notify one thread waiting for a condition variable.
result_t broadcast(void)
Notify all threads waiting for a condition variable.
result_t wait(mutex &mutex)
Wait for a condition variable to be notified.
void notify_all_at_thread_exit(condition_variable &cond, std::unique_lock< mutex > lk)
void __throw_system_error(int ev, const char *what_arg)
void __throw_cmsis_error(int ev, const char *what_arg)
@ ok
Function completed; no errors or events occurred.
uint32_t result_t
Type of values returned by RTOS functions.