Template Function shad::rt::asyncExecuteOnAll(Handle&, FunT&&, const InArgsT&)¶
- Defined in File runtime.h
Function Documentation¶
-
template <typename FunT, typename InArgsT>
voidshad::rt::asyncExecuteOnAll(Handle &handle, FunT &&func, const InArgsT &args) Execute a function on all localities asynchronously.
Typical Usage:
struct Args { int a; char b; }; void task(Handle & handle, const Args & args) { /* do something */ } Args args { 2, 'a' }; Handle handle; asyncExecuteOnAll(handle, task, args); /* do something else */ waitForcompletion(handle);
- Template Parameters
FunT: The type of the function to be executed. The function prototype must be:void(Handle &, const InArgsT &);
InArgsT: The type of the argument accepted by the function. The type can be a structure or a class but with the restriction that must be memcopy-able.
- Parameters
handle: An Handle for the associated task-group.func: The function to execute.args: The arguments to be passed to the function.