std::condition_variable_any(3cxx)

πŸ’… NAME πŸ’…

std::condition_variable_any β€” literally the whole name bestie, that's it, condition_variable_any πŸŽ€ (yes the page is from std::condition_variable_any(3cxx), the C++ corner of the man-page universe, welcome)


✨ SYNOPSIS ✨

okay so here's the full cast of characters, copy-pasted straight from the source because I would never mess with signatures, that's sacred πŸ’–

🫢 Public Member Functions 🫢

condition_variable_any (const condition_variable_any &)=delete
void notify_all () noexcept
void notify_one () noexcept
condition_variable_any & operator= (const condition_variable_any &)=delete
template<typename _Lock > void wait (_Lock &__lock)
template<typename _Lock , typename _Predicate > void wait (_Lock &__lock, _Predicate __p)
template<class _Lock , class _Predicate > bool wait (_Lock &__lock, stop_token __stoken, _Predicate __p)
template<typename _Lock , typename _Rep , typename _Period > cv_status wait_for (_Lock &__lock, const chrono::duration< _Rep, _Period > &__rtime)
template<typename _Lock , typename _Rep , typename _Period , typename _Predicate > bool wait_for (_Lock &__lock, const chrono::duration< _Rep, _Period > &__rtime, _Predicate __p)
template<class _Lock , class _Rep , class _Period , class _Predicate > bool wait_for (_Lock &__lock, stop_token __stoken, const chrono::duration< _Rep, _Period > &__rel_time, _Predicate __p)
template<typename _Lock , typename _Clock , typename _Duration > cv_status wait_until (_Lock &__lock, const chrono::time_point< _Clock, _Duration > &__atime)
template<typename _Lock , typename _Clock , typename _Duration , typename _Predicate > bool wait_until (_Lock &__lock, const chrono::time_point< _Clock, _Duration > &__atime, _Predicate __p)
template<class _Lock , class _Clock , class _Duration , class _Predicate > bool wait_until (_Lock &__lock, stop_token __stoken, const chrono::time_point< _Clock, _Duration > &__abs_time, _Predicate __p)

let me walk you through the vibes πŸ‘‘

  • condition_variable_any (const condition_variable_any &)=delete β€” the copy constructor? deleted. not invited. the door is shut, the velvet rope is up, she does not do duplicates 🚫
  • void notify_all () noexcept β€” notify_all, noexcept, zero drama, zero throws. everyone's getting the message, no cap πŸ—£οΈ
  • void notify_one () noexcept β€” same energy but one. noexcept again because she's consistent like that ✨
  • condition_variable_any & operator= (const condition_variable_any &)=delete β€” and assignment is deleted too. no copying, no reassigning, we respect the boundary bestie πŸ’€
  • template<typename _Lock > void wait (_Lock &__lock) β€” plain wait, takes your _Lock by reference, that's the whole thing, she's lowkey minimal 🌸
  • template<typename _Lock , typename _Predicate > void wait (_Lock &__lock, _Predicate __p) β€” wait but now there's a _Predicate __p in the mix, returns void, very demure πŸŽ€
  • template<class _Lock , class _Predicate > bool wait (_Lock &__lock, stop_token __stoken, _Predicate __p) β€” this one's got a stop_token __stoken and a predicate and it returns bool. main character overload fr πŸ”₯
  • template<typename _Lock , typename _Rep , typename _Period > cv_status wait_for (_Lock &__lock, const chrono::duration< _Rep, _Period > &__rtime) β€” wait_for with a chrono::duration< _Rep, _Period > &__rtime, returns cv_status ⏳
  • template<typename _Lock , typename _Rep , typename _Period , typename _Predicate > bool wait_for (_Lock &__lock, const chrono::duration< _Rep, _Period > &__rtime, _Predicate __p) β€” same duration situation, plus _Predicate __p, and this one hands you a bool πŸ¦‹
  • template<class _Lock , class _Rep , class _Period , class _Predicate > bool wait_for (_Lock &__lock, stop_token __stoken, const chrono::duration< _Rep, _Period > &__rel_time, _Predicate __p) β€” the deluxe wait_for: stop_token __stoken, const chrono::duration< _Rep, _Period > &__rel_time, _Predicate __p, returns bool. it's giving full package πŸ’œ
  • template<typename _Lock , typename _Clock , typename _Duration > cv_status wait_until (_Lock &__lock, const chrono::time_point< _Clock, _Duration > &__atime) β€” wait_until era, takes const chrono::time_point< _Clock, _Duration > &__atime, returns cv_status ⭐
  • template<typename _Lock , typename _Clock , typename _Duration , typename _Predicate > bool wait_until (_Lock &__lock, const chrono::time_point< _Clock, _Duration > &__atime, _Predicate __p) β€” same time point, now with _Predicate __p, returns bool πŸ™ˆ
  • template<class _Lock , class _Clock , class _Duration , class _Predicate > bool wait_until (_Lock &__lock, stop_token __stoken, const chrono::time_point< _Clock, _Duration > &__abs_time, _Predicate __p) β€” the big one: stop_token __stoken, const chrono::time_point< _Clock, _Duration > &__abs_time, _Predicate __p, bool return. iconic, ate, periodt πŸ‘‘

πŸ’œ Detailed Description πŸ’œ

condition_variable_any

that's it. that's the detailed description. she said what she said 🧚

fr fr, the docs are being mysterious on purpose. iykyk πŸ’…

Definition at line 241 of file condition_variable.


πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for libstdc++ from the source code.

like, nobody wrote this with their hands β€” Doxygen did it for libstdc++, straight from the source code, and honestly? respect the automation 🌈


and that's the page bestie!! this gem comes to you courtesy of libstdc++, dated Sat Mar 19 2022 β€” go forth and synchronize responsibly, mwah πŸ’–πŸ¦‹βœ¨

πŸ“¦ where this page comes from