hpx/distribution_policies/target_distribution_policy.hpp
hpx/distribution_policies/target_distribution_policy.hpp#
Defined in header hpx/distribution_policies/target_distribution_policy.hpp.
See Public API for a list of names and headers that are part of the public HPX API.
-
namespace hpx
-
namespace components
Variables
-
static const target_distribution_policy target = {}#
A predefined instance of the target_distribution_policy. It will represent the local locality and will place all items to create here.
-
struct target_distribution_policy#
- #include <target_distribution_policy.hpp>
This class specifies the parameters for a simple distribution policy to use for creating (and evenly distributing) a given number of items on a given set of localities.
Public Functions
-
target_distribution_policy() = default#
Default-construct a new instance of a target_distribution_policy. This policy will represent one locality (the local locality).
-
inline target_distribution_policy operator()(id_type const &id) const#
Create a new target_distribution_policy representing the given locality
- Parameters
loc – [in] The locality the new instance should represent
-
template<typename Component, typename ...Ts>
inline hpx::future<hpx::id_type> create(Ts&&... vs) const# Create one object on one of the localities associated by this policy instance
Note
This function is part of the placement policy implemented by this class
- Parameters
vs – [in] The arguments which will be forwarded to the constructor of the new object.
- Returns
A future holding the global address which represents the newly created object
-
template<typename Component, typename ...Ts>
inline hpx::future<std::vector<bulk_locality_result>> bulk_create(std::size_t count, Ts&&... vs) const# Create multiple objects on the localities associated by this policy instance
Note
This function is part of the placement policy implemented by this class
- Parameters
count – [in] The number of objects to create
vs – [in] The arguments which will be forwarded to the constructors of the new objects.
- Returns
A future holding the list of global addresses which represent the newly created objects
-
template<typename Action, typename ...Ts>
inline async_result<Action>::type async(launch policy, Ts&&... vs) const#
-
template<typename Action, typename Callback, typename ...Ts>
inline async_result<Action>::type async_cb(launch policy, Callback &&cb, Ts&&... vs) const# Note
This function is part of the invocation policy implemented by this class
-
template<typename Action, typename Continuation, typename ...Ts>
inline bool apply(Continuation &&c, launch policy, Ts&&... vs) const# Note
This function is part of the invocation policy implemented by this class
-
template<typename Action, typename Continuation, typename Callback, typename ...Ts>
inline bool apply_cb(Continuation &&c, launch policy, Callback &&cb, Ts&&... vs) const# Note
This function is part of the invocation policy implemented by this class
-
template<typename Action, typename Callback, typename ...Ts>
inline bool apply_cb(launch policy, Callback &&cb, Ts&&... vs) const#
-
template<typename Action>
struct async_result# - #include <target_distribution_policy.hpp>
Note
This function is part of the invocation policy implemented by this class
-
target_distribution_policy() = default#
-
static const target_distribution_policy target = {}#
-
namespace components