![]() |
hpx::lcos::broadcast_with_index — Perform a distributed broadcast operation.
// In header: <hpx/lcos/broadcast.hpp> template<typename Action, typename ArgN, ... > hpx::future< std::vector< decltype(Action(hpx::id_type, ArgN,..., std::size_t))> > broadcast_with_index(std::vector< hpx::id_type > const & ids, ArgN argN, ...);
The function hpx::lcos::broadcast_with_index performs a distributed broadcast operation resulting in action invocations on a given set of global identifiers. The action can be either a plain action (in which case the global identifiers have to refer to localities) or a component action (in which case the global identifiers have to refer to instances of a component type which exposes the action.
The given action is invoked asynchronously on all given identifiers, and the arguments ArgN are passed along to those invocations.
The function passes the index of the global identifier in the given list of identifiers as the last argument to the action.
![]() |
Note |
---|---|
If decltype(Action(...)) is void, then the result of this function is future<void>. |
Parameters: |
|
||||
Returns: |
This function returns a future representing the result of the overall reduction operation. |