|
Zth (libzth)
|
Fiber-aware barrier/gate. More...
#include <sync.h>
Public Member Functions | |
| Gate (size_t count, cow_string const &name="Gate") | |
| Gate (size_t count, cow_string &&name) | |
| virtual | ~Gate () noexcept override=default |
| bool | pass () noexcept |
| void | wait () |
| size_t | count () const noexcept |
| size_t | current () const noexcept |
Public Member Functions inherited from zth::Synchronizer< Size > | |
| Synchronizer ()=default | |
| Synchronizer (cow_string const &name) | |
| Synchronizer (cow_string &&name) | |
| virtual | ~Synchronizer () noexcept override |
Public Member Functions inherited from zth::SynchronizerBase | |
| virtual | ~SynchronizerBase () noexcept override |
Public Member Functions inherited from zth::RefCounted | |
| RefCounted () noexcept | |
| virtual | ~RefCounted () noexcept |
| void | used () noexcept |
| bool | unused () noexcept |
| size_t | refs () const noexcept |
Public Member Functions inherited from zth::UniqueID< SynchronizerBase > | |
| UniqueID (UniqueID const &)=delete | |
| UniqueID (UniqueID &&u) noexcept | |
| UniqueID (string const &name) | |
| UniqueID (string &&name) | |
| UniqueID (char const *name=nullptr) | |
| UniqueID & | operator= (UniqueID const &)=delete |
| UniqueID & | operator= (UniqueID &&u) noexcept |
| virtual | ~UniqueID () noexcept override=default |
| void const * | normptr () const noexcept |
| uint64_t | id () const noexcept |
Public Member Functions inherited from zth::NamedUniqueID< Named > | |
| virtual | ~NamedUniqueID () noexcept override=default |
| string const & | name () const noexcept |
| void | setName (string const &name) |
| void | setName (char const *name) |
| void | setName (string &&name) |
| virtual char const * | id_str () const noexcept override |
Additional Inherited Members | |
Public Types inherited from zth::Synchronizer< Size > | |
| typedef SynchronizerBase | base |
Public Types inherited from zth::UniqueID< SynchronizerBase > | |
| typedef NamedUniqueID | base |
Static Public Member Functions inherited from zth::UniqueID< SynchronizerBase > | |
| static uint64_t | getID () noexcept |
Protected Types inherited from zth::Synchronizer< Size > | |
| typedef base::queue_type | queue_type |
Protected Types inherited from zth::SynchronizerBase | |
| typedef List | queue_type |
Protected Member Functions inherited from zth::Synchronizer< Size > | |
| virtual queue_type & | queue (size_t q) final |
Protected Member Functions inherited from zth::SynchronizerBase | |
| SynchronizerBase (cow_string const &name="Synchronizer") | |
| SynchronizerBase (cow_string &&name) | |
| queue_type::iterator | enqueue (Listable &item, size_t q=0) noexcept |
| void | block (size_t q=0) |
| bool | unblock (Fiber &f, size_t q=0, bool prio=false) noexcept |
| Unblock the specific fiber. | |
| Listable * | unblockFirst (size_t q=0, bool prio=false) noexcept |
| bool | unblockAll (size_t q=0, bool prio=false) noexcept |
| virtual void | wakeup (Listable &item, queue_type::user_type user, bool prio, size_t q) noexcept |
| bool | blockUntil (Timestamp const &timeout, Timestamp const &now=Timestamp::now(), size_t q=0) |
| Block, with timeout. | |
| bool | blockFor (TimeInterval const &timeout, Timestamp const &now=Timestamp::now(), size_t q=0) |
| Block, with timeout. | |
Protected Member Functions inherited from zth::RefCounted | |
| virtual void | cleanup () noexcept |
Protected Member Functions inherited from zth::UniqueID< SynchronizerBase > | |
| virtual uint64_t | id_ () const noexcept final |
Protected Member Functions inherited from zth::NamedUniqueID< Named > | |
| NamedUniqueID (char const *name=nullptr) | |
| NamedUniqueID (string const &name) | |
| NamedUniqueID (string &&name) | |
Protected Member Functions inherited from zth::UniqueIDBase | |
| virtual | ~UniqueIDBase () noexcept=default |
Fiber-aware barrier/gate.
|
inlineexplicit |
|
inline |
|
overridevirtualdefaultnoexcept |