Add mechanism for posting functions to the main loop #2082
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
As mentioned in #1064.
This pull request adds two functions:
bool schedule_function(std::function<void(void)> fn);
May be used to run given function next time
loop
function returns, orrun_scheduled_functions
is called.std::bind
may be used to pass arguments to a function, or call a class member function.void run_scheduled_functions();
Runs all scheduled functions. This function may be used if
loop
is not being used, or it does not return on a regular basis (i.e. there an explicit loop somewhere insetup
or in library code).TODO: