BitShares-Core
7.0.2
BitShares blockchain node software and command-line wallet software
|
#include <context.hpp>
Classes | |
struct | blocked_promise |
Public Types | |
typedef fc::context * | ptr |
using | context_fn = void(*)(intptr_t) |
Public Member Functions | |
context (context_fn sf, stack_allocator &alloc, fc::thread *t) | |
context (fc::thread *t) | |
~context () | |
void | reinitialize () |
void | add_blocking_promise (promise_base *p, bool req=true) |
bool | try_unblock (promise_base *p) |
void | remove_blocking_promise (promise_base *p) |
void | timeout_blocking_promises () |
void | set_exception_on_blocking_promises (const exception_ptr &e) |
void | clear_blocking_promises () |
bool | is_complete () const |
Public Attributes | |
bco::stack_context | stack_ctx |
bc::fcontext_t | my_context |
fc::context * | caller_context |
stack_allocator * | stack_alloc |
priority | prio |
std::vector< blocked_promise > | blocking_prom |
time_point | resume_time |
fc::context * | next_blocked |
fc::context * | next_blocked_mutex |
fc::context * | next |
fc::thread * | ctx_thread |
bool | canceled |
const char * | cancellation_reason |
bool | complete |
task_base * | cur_task |
uint64_t | context_posted_num |
maintains information associated with each context such as where it is blocked, what time it should resume, priority, etc.
Definition at line 47 of file context.hpp.
using fc::context::context_fn = void(*)(intptr_t) |
Definition at line 54 of file context.hpp.
typedef fc::context* fc::context::ptr |
Definition at line 48 of file context.hpp.
|
inline |
Definition at line 57 of file context.hpp.
|
inline |
Definition at line 77 of file context.hpp.
|
inline |
Definition at line 94 of file context.hpp.
|
inline |
p | - the promise |
req | - require this promise to 'unblock', otherwise try_unblock will allow it to be one of many that could 'unblock' |
Definition at line 129 of file context.hpp.
|
inline |
Definition at line 177 of file context.hpp.
|
inline |
Definition at line 181 of file context.hpp.
|
inline |
Definition at line 99 of file context.hpp.
|
inline |
Definition at line 158 of file context.hpp.
|
inline |
Definition at line 172 of file context.hpp.
|
inline |
Definition at line 167 of file context.hpp.
|
inline |
If all of the required promises and any optional promises then return true, else false.
Definition at line 143 of file context.hpp.
std::vector<blocked_promise> fc::context::blocking_prom |
Definition at line 188 of file context.hpp.
fc::context* fc::context::caller_context |
Definition at line 184 of file context.hpp.
bool fc::context::canceled |
Definition at line 195 of file context.hpp.
const char* fc::context::cancellation_reason |
Definition at line 197 of file context.hpp.
bool fc::context::complete |
Definition at line 199 of file context.hpp.
uint64_t fc::context::context_posted_num |
Definition at line 201 of file context.hpp.
fc::thread* fc::context::ctx_thread |
Definition at line 194 of file context.hpp.
task_base* fc::context::cur_task |
Definition at line 200 of file context.hpp.
bc::fcontext_t fc::context::my_context |
Definition at line 183 of file context.hpp.
fc::context* fc::context::next |
Definition at line 193 of file context.hpp.
fc::context* fc::context::next_blocked |
Definition at line 191 of file context.hpp.
fc::context* fc::context::next_blocked_mutex |
Definition at line 192 of file context.hpp.
priority fc::context::prio |
Definition at line 186 of file context.hpp.
time_point fc::context::resume_time |
Definition at line 189 of file context.hpp.
stack_allocator* fc::context::stack_alloc |
Definition at line 185 of file context.hpp.
bco::stack_context fc::context::stack_ctx |
Definition at line 49 of file context.hpp.