Add a "when pending" worker to a context An "when pending" worker will run when it is pending (can be set via async_context_set_work_pending), and is NOT automatically removed when it runs. The time to fire is specified by a delay via the ms parameter
Remove a "when pending" worker from a context
Mark a "when pending" worker as having work pending The worker will be run from the async_context at a later time.
End async_context processing, and free any resources Note the user should clean up any resources associated with workers in the async_context themselves. Asynchronous (non-polled) async_contexts guarantee that no callback is being called once this method returns.
Add an "at time" worker to a context An "at time" worker will run at or after a specific point in time, and is automatically when (just before) it runs. The time to fire is specified by a delay via the ms parameter
Perform any pending work for polling style async_context For a polled async_context (e.g. async_context_poll) the user is responsible for calling this method periodically to perform any required work. This method may immediately perform outstanding work on other context types, but is not required to.
Block until work needs to be done or the specified time has been reached
Block until work needs to be done or the specified number of milliseconds have passed
Execute work synchronously on the core the async_context belongs to. This method is intended for code external to the async_context (e.g. another thread/task) to execute a function with the same guarantees (single core, logical thread of execution) that async_context workers are called with.
sleep until the specified time in an async_context callback safe way
Return the processor core this async_context belongs to
Acquire the async_context lock The owner of the async_context lock is the logic owner of the async_context and other work related to this async_context will not happen concurrently. This method may be called in a nested fashion by the the lock owner. \see async_context_release_lock
Release the async_context lock \see async_context_acquire_lock_blocking
Assert if the caller does not own the lock for the async_context
Add an "at time" worker to a context An "at time" worker will run at or after a specific point in time, and is automatically when (just before) it runs. The time to fire is specified in the next_time field of the worker.
Add an "at time" worker to a context An "at time" worker will run at or after a specific point in time, and is automatically when (just before) it runs. The time to fire is specified by the at parameter.
Remove an "at time" worker from a context