|
YACLib
C++ library for concurrent tasks execution
|
#include <core.hpp>
Public Member Functions | |
| NoResultCore () noexcept | |
| template<typename T > | |
| void | Store (T &&) noexcept |
| void | StoreCallback (InlineCore &callback) noexcept |
| template<bool SymmetricTransfer> | |
| Transfer< SymmetricTransfer > | SetResult () noexcept |
Public Member Functions inherited from yaclib::detail::BaseCore | |
| bool | Empty () const noexcept |
| template<bool Shared> | |
| void | TransferExecutorTo (BaseCore &callback) noexcept |
Public Member Functions inherited from yaclib::detail::InlineCore | |
| virtual InlineCore * | Here (InlineCore &caller) noexcept=0 |
Public Member Functions inherited from yaclib::Job | |
| virtual void | Drop () noexcept |
Public Member Functions inherited from yaclib::IFunc | |
| virtual void | Call () noexcept |
Public Member Functions inherited from yaclib::IRef | |
| virtual void | IncRef () noexcept |
| Increments reference counter. | |
| virtual void | DecRef () noexcept |
| Decrements reference counter. | |
| virtual std::size_t | GetRef () noexcept |
| virtual | ~IRef () noexcept=default |
Public Attributes | |
| Callback | _self |
Public Attributes inherited from yaclib::detail::BaseCore | |
| IExecutorPtr | _executor {NoRefTag{}, &MakeInline()} |
Public Attributes inherited from yaclib::detail::Node | |
| Node * | next = nullptr |
Additional Inherited Members | |
Public Types inherited from yaclib::detail::BaseCore | |
| enum | State : std::uintptr_t { kEmpty = std::uintptr_t{0} , kResult = std::numeric_limits<std::uintptr_t>::max() } |
Protected Member Functions inherited from yaclib::detail::BaseCore | |
| BaseCore (State state) noexcept | |
| void | StoreCallbackImpl (InlineCore &callback) noexcept |
| template<bool Shared> | |
| bool | SetCallbackImpl (InlineCore &callback) noexcept |
| bool | ResetImpl () noexcept |
| template<bool SymmetricTransfer, bool Shared> | |
| Transfer< SymmetricTransfer > | SetInlineImpl (InlineCore &callback) noexcept |
| template<bool SymmetricTransfer, bool Shared> | |
| Transfer< SymmetricTransfer > | SetResultImpl () noexcept |
Protected Attributes inherited from yaclib::detail::BaseCore | |
| yaclib_std::atomic_uintptr_t | _callback |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
Definition at line 26 of file core.hpp.
References yaclib::MakeContract(), and yaclib::detail::BaseCore::StoreCallbackImpl().