hpx::dataflow (distributed)#

Defined in header hpx/async.hpp.

See Public API for a list of names and headers that are part of the public HPX API.

namespace hpx


template<typename Action, typename Target, typename ...Ts>
decltype(auto) dataflow(Action &&action, Target &&target, Ts&&... ts)#

The distributed implementation of hpx::dataflow can be used by giving an action instance as argument instead of a function, and also by providing another argument with the locality ID or the target ID. The action executes asynchronously.


Its behavior is similar to hpx::async with the exception that if one of the arguments is a future, then hpx::dataflow will wait for the future to be ready to launch the thread.

Template Parameters
  • Action – The type of action instance

  • Target – The type of target where the action should be executed

  • Ts – The type of any additional arguments

  • action – The action instance to be executed

  • target – The target where the action should be executed

  • ts – Additional arguments


hpx::future referring to the shared state created by this call to hpx::dataflow