hpx/agas/addressing_service.hpp
hpx/agas/addressing_service.hpp#
See Public API for a list of names and headers that are part of the public HPX API.
-
namespace hpx
-
namespace agas#
-
struct addressing_service#
Public Types
-
using component_id_type = components::component_type#
-
using iterate_types_function_type = hpx::function<void(std::string const&, components::component_type), true>#
Public Functions
-
HPX_NON_COPYABLE(addressing_service)#
-
~addressing_service() = default#
-
void adjust_local_cache_size(std::size_t)#
Adjust the size of the local AGAS Address resolution cache.
-
inline state get_status() const#
-
inline void set_status(state new_state)#
-
inline naming::gid_type const &get_local_locality(error_code& = throws) const#
-
inline bool is_bootstrap() const#
-
inline bool is_console() const#
Returns whether this addressing_service represents the console locality.
-
inline bool is_connecting() const#
Returns whether this addressing_service is connecting to a running application.
-
void register_server_instances()#
-
void garbage_collect_non_blocking(error_code &ec = throws)#
-
void garbage_collect(error_code &ec = throws)#
-
std::int64_t synchronize_with_async_incref(hpx::future<std::int64_t> fut, hpx::id_type const &id, std::int64_t compensated_credit)#
-
inline server::primary_namespace &get_local_primary_namespace_service()#
-
bool register_locality(parcelset::endpoints_type const &endpoints, naming::gid_type &prefix, std::uint32_t num_threads, error_code &ec = throws)#
Add a locality to the runtime.
-
parcelset::endpoints_type const &resolve_locality(naming::gid_type const &gid, error_code &ec = throws)#
Resolve a locality to its prefix.
- Returns
Returns an empty vector if the locality is not registered.
-
bool unregister_locality(naming::gid_type const &gid, error_code &ec = throws)#
Remove a locality from the runtime.
-
void remove_resolved_locality(naming::gid_type const &gid)#
remove given locality from locality cache
-
bool get_console_locality(naming::gid_type &locality, error_code &ec = throws)#
Get locality locality_id of the console locality.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
locality_id – [out] The locality_id value uniquely identifying the console locality. This is valid only, if the return value of this function is true.
try_cache – [in] If this is set to true the console is first tried to be found in the local cache. Otherwise this function will always query AGAS, even if the console locality_id is already known locally.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
This function returns true if a console locality_id exists and returns false otherwise.
-
bool get_localities(std::vector<naming::gid_type> &locality_ids, components::component_type type, error_code &ec = throws)#
Query for the locality_ids of all known localities.
This function returns the locality_ids of all localities known to the AGAS server or all localities having a registered factory for a given component type.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
locality_ids – [out] The vector will contain the prefixes of all localities registered with the AGAS server. The returned vector holds the prefixes representing the runtime_support components of these localities.
type – [in] The component type will be used to determine the set of prefixes having a registered factory for this component. The default value for this parameter is components::component_invalid, which will return prefixes of all localities.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
-
inline bool get_localities(std::vector<naming::gid_type> &locality_ids, error_code &ec = throws)#
-
hpx::future<std::uint32_t> get_num_localities_async(components::component_type type = components::component_invalid) const#
Query for the number of all known localities.
This function returns the number of localities known to the AGAS server or the number of localities having a registered factory for a given component type.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
type – [in] The component type will be used to determine the set of prefixes having a registered factory for this component. The default value for this parameter is components::component_invalid, which will return prefixes of all localities.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
-
std::uint32_t get_num_localities(components::component_type type, error_code &ec = throws) const#
-
inline std::uint32_t get_num_localities(error_code &ec = throws) const#
-
std::uint32_t get_num_overall_threads(error_code &ec = throws) const#
-
std::vector<std::uint32_t> get_num_threads(error_code &ec = throws) const#
-
components::component_type get_component_id(std::string const &name, error_code &ec = throws)#
Return a unique id usable as a component type.
This function returns the component type id associated with the given component name. If this is the first request for this component name a new unique id will be created.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
name – [in] The component name (string) to get the component type for.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
The function returns the currently associated component type. Any error results in an exception thrown from this function.
-
void iterate_types(iterate_types_function_type const &f, error_code &ec = throws)#
-
std::string get_component_type_name(components::component_type id, error_code &ec = throws)#
-
inline components::component_type register_factory(naming::gid_type const &locality_id, std::string const &name, error_code &ec = throws)#
Register a factory for a specific component type.
This function allows to register a component factory for a given locality and component type.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
locality_id – [in] The locality value uniquely identifying the given locality the factory needs to be registered for.
name – [in] The component name (string) to register a factory for the given component type for.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
The function returns the currently associated component type. Any error results in an exception thrown from this function. The returned component type is the same as if the function get_component_id was called using the same component name.
-
components::component_type register_factory(std::uint32_t locality_id, std::string const &name, error_code &ec = throws)#
-
bool get_id_range(std::uint64_t count, naming::gid_type &lower_bound, naming::gid_type &upper_bound, error_code &ec = throws)#
Get unique range of freely assignable global ids.
Every locality needs to be able to assign global ids to different components without having to consult the AGAS server for every id to generate. This function can be called to preallocate a range of ids usable for this purpose.
Note
This function assigns a range of global ids usable by the given locality for newly created components. Any of the returned global ids still has to be bound to a local address, either by calling bind or bind_range.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
l – [in] The locality the locality id needs to be generated for. Repeating calls using the same locality results in identical locality_id values.
count – [in] The number of global ids to be generated.
lower_bound – [out] The lower bound of the assigned id range. The returned value can be used as the first id to assign. This is valid only, if the return value of this function is true.
upper_bound – [out] The upper bound of the assigned id range. The returned value can be used as the last id to assign. This is valid only, if the return value of this function is true.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
This function returns true if a new range has been generated (it has been called for the first time for the given locality) and returns false if this locality already got a range assigned in an earlier call. Any error results in an exception thrown from this function.
-
inline bool bind_local(naming::gid_type const &id, naming::address const &addr, error_code &ec = throws)#
Bind a global address to a local address.
Every element in the HPX namespace has a unique global address (global id). This global address has to be associated with a concrete local address to be able to address an instance of a component using its global address.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
Note
Binding a gid to a local address sets its global reference count to one.
- Parameters
id – [in] The global address which has to be bound to the local address.
addr – [in] The local address to be bound to the global address.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
This function returns true, if this global id got associated with an local address. It returns false otherwise.
-
inline hpx::future<bool> bind_async(naming::gid_type const &id, naming::address const &addr, std::uint32_t locality_id)#
-
inline hpx::future<bool> bind_async(naming::gid_type const &id, naming::address const &addr, naming::gid_type const &locality)#
-
bool bind_range_local(naming::gid_type const &lower_id, std::uint64_t count, naming::address const &baseaddr, std::uint64_t offset, error_code &ec = throws)#
Bind unique range of global ids to given base address.
Every locality needs to be able to bind global ids to different components without having to consult the AGAS server for every id to bind. This function can be called to bind a range of consecutive global ids to a range of consecutive local addresses (separated by a given offset).
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
Note
Binding a gid to a local address sets its global reference count to one.
- Parameters
lower_id – [in] The lower bound of the assigned id range. The value can be used as the first id to assign.
count – [in] The number of consecutive global ids to bind starting at lower_id.
baseaddr – [in] The local address to bind to the global id given by lower_id. This is the base address for all additional local addresses to bind to the remaining global ids.
offset – [in] The offset to use to calculate the local addresses to be bound to the range of global ids.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
This function returns true, if the given range was successfully bound. It returns false otherwise.
-
hpx::future<bool> bind_range_async(naming::gid_type const &lower_id, std::uint64_t count, naming::address const &baseaddr, std::uint64_t offset, naming::gid_type const &locality)#
-
inline hpx::future<bool> bind_range_async(naming::gid_type const &lower_id, std::uint64_t count, naming::address const &baseaddr, std::uint64_t offset, std::uint32_t locality_id)#
-
inline bool unbind_local(naming::gid_type const &id, error_code &ec = throws)#
Unbind a global address.
Remove the association of the given global address with any local address, which was bound to this global address. Additionally it returns the local address which was bound at the time of this call.
Note
You can unbind only global ids bound using the function bind. Do not use this function to unbind any of the global ids bound using bind_range.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
Note
This function will raise an error if the global reference count of the given gid is not zero! TODO: confirm that this happens.
- Parameters
id – [in] The global address (id) for which the association has to be removed.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
The function returns true if the association has been removed, and it returns false if no association existed. Any error results in an exception thrown from this function.
-
inline bool unbind_local(naming::gid_type const &id, naming::address &addr, error_code &ec = throws)#
Unbind a global address.
Remove the association of the given global address with any local address, which was bound to this global address. Additionally it returns the local address which was bound at the time of this call.
Note
You can unbind only global ids bound using the function bind. Do not use this function to unbind any of the global ids bound using bind_range.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
Note
This function will raise an error if the global reference count of the given gid is not zero! TODO: confirm that this happens.
- Parameters
id – [in] The global address (id) for which the association has to be removed.
addr – [out] The local address which was associated with the given global address (id). This is valid only if the return value of this function is true.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
The function returns true if the association has been removed, and it returns false if no association existed. Any error results in an exception thrown from this function.
-
inline bool unbind_range_local(naming::gid_type const &lower_id, std::uint64_t count, error_code &ec = throws)#
Unbind the given range of global ids.
Note
You can unbind only global ids bound using the function bind_range. Do not use this function to unbind any of the global ids bound using bind.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
Note
This function will raise an error if the global reference count of the given gid is not zero! TODO: confirm that this happens.
- Parameters
lower_id – [in] The lower bound of the assigned id range. The value must the first id of the range as specified to the corresponding call to bind_range.
count – [in] The number of consecutive global ids to unbind starting at lower_id. This number must be identical to the number of global ids bound by the corresponding call to bind_range
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
This function returns true if a new range has been generated (it has been called for the first time for the given locality) and returns false if this locality already got a range assigned in an earlier call. Any error results in an exception thrown from this function.
-
bool unbind_range_local(naming::gid_type const &lower_id, std::uint64_t count, naming::address &addr, error_code &ec = throws)#
Unbind the given range of global ids.
Note
You can unbind only global ids bound using the function bind_range. Do not use this function to unbind any of the global ids bound using bind.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
Note
This function will raise an error if the global reference count of the given gid is not zero!
- Parameters
lower_id – [in] The lower bound of the assigned id range. The value must the first id of the range as specified to the corresponding call to bind_range.
count – [in] The number of consecutive global ids to unbind starting at lower_id. This number must be identical to the number of global ids bound by the corresponding call to bind_range
addr – [out] The local address which was associated with the given global address (id). This is valid only if the return value of this function is true.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
This function returns true if a new range has been generated (it has been called for the first time for the given locality) and returns false if this locality already got a range assigned in an earlier call.
-
hpx::future<naming::address> unbind_range_async(naming::gid_type const &lower_id, std::uint64_t count = 1)#
-
inline bool is_local_address_cached(naming::gid_type const &id, error_code &ec = throws)#
Test whether the given address refers to a local object.
This function will test whether the given address refers to an object living on the locality of the caller.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
addr – [in] The address to test.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
This function returns true if the passed address refers to an object which lives on the locality of the caller.
-
bool is_local_address_cached(naming::gid_type const &id, naming::address &addr, error_code &ec = throws)#
-
inline bool resolve_local(naming::gid_type const &id, naming::address &addr, error_code &ec = throws)#
Resolve a given global address (id) to its associated local address.
This function returns the local address which is currently associated with the given global address (id).
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
id – [in] The global address (id) for which the associated local address should be returned.
addr – [out] The local address which currently is associated with the given global address (id), this is valid only if the return value of this function is true.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
This function returns true if the global address has been resolved successfully (there exists an association to a local address) and the associated local address has been returned. The function returns false if no association exists for the given global address. Any error results in an exception thrown from this function.
-
inline bool resolve_local(hpx::id_type const &id, naming::address &addr, error_code &ec = throws)#
-
inline naming::address resolve_local(naming::gid_type const &id, error_code &ec = throws)#
-
inline naming::address resolve_local(hpx::id_type const &id, error_code &ec = throws)#
-
bool resolve_full_local(naming::gid_type const &id, naming::address &addr, error_code &ec = throws)#
-
inline bool resolve_full_local(hpx::id_type const &id, naming::address &addr, error_code &ec = throws)#
-
inline naming::address resolve_full_local(naming::gid_type const &id, error_code &ec = throws)#
-
inline naming::address resolve_full_local(hpx::id_type const &id, error_code &ec = throws)#
-
bool resolve_cached(naming::gid_type const &id, naming::address &addr, error_code &ec = throws)#
-
inline bool resolve_cached(hpx::id_type const &id, naming::address &addr, error_code &ec = throws)#
-
inline bool resolve_local(naming::gid_type const *gids, naming::address *addrs, std::size_t size, hpx::detail::dynamic_bitset<> &locals, error_code &ec = throws)#
-
bool resolve_full_local(naming::gid_type const *gids, naming::address *addrs, std::size_t size, hpx::detail::dynamic_bitset<> &locals, error_code &ec = throws)#
-
bool resolve_cached(naming::gid_type const *gids, naming::address *addrs, std::size_t size, hpx::detail::dynamic_bitset<> &locals, error_code &ec = throws)#
-
hpx::future<std::int64_t> incref_async(naming::gid_type const &gid, std::int64_t credits = 1, hpx::id_type const &keep_alive = hpx::invalid_id)#
Increment the global reference count for the given id.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
id – [in] The global address (id) for which the global reference count has to be incremented.
credits – [in] The number of reference counts to add for the given id.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
Whether the operation was successful.
-
inline std::int64_t incref(naming::gid_type const &gid, std::int64_t credits = 1, error_code &ec = throws)#
-
void decref(naming::gid_type const &id, std::int64_t credits = 1, error_code &ec = throws)#
Decrement the global reference count for the given id.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
id – [in] The global address (id) for which the global reference count has to be decremented.
t – [out] If this was the last outstanding global reference for the given gid (the return value of this function is zero), t will be set to the component type of the corresponding element. Otherwise t will not be modified.
credits – [in] The number of reference counts to add for the given id.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
The global reference count after the decrement.
-
hpx::future<iterate_names_return_type> iterate_ids(std::string const &pattern)#
Invoke the supplied hpx::function for every registered global name.
This function iterates over all registered global ids and returns every found entry matching the given name pattern. Any error results in an exception thrown (or reported) from this function.
- Parameters
pattern – [in] pattern (poosibly using wildcards) to match all existing entries against
-
bool register_name(std::string const &name, naming::gid_type const &id, error_code &ec = throws)#
Register a global name with a global address (id)
This function registers an association between a global name (string) and a global address (id) usable with one of the functions above (bind, unbind, and resolve).
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
name – [in] The global name (string) to be associated with the global address.
id – [in] The global address (id) to be associated with the global address.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
The function returns true if the global name was registered. It returns false if the global name is not registered.
-
bool register_name(std::string const &name, hpx::id_type const &id, error_code &ec = throws)#
-
hpx::future<hpx::id_type> unregister_name_async(std::string const &name)#
Unregister a global name (release any existing association)
This function releases any existing association of the given global name with a global address (id).
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
name – [in] The global name (string) for which any association with a global address (id) has to be released.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
The function returns true if an association of this global name has been released, and it returns false, if no association existed. Any error results in an exception thrown from this function.
-
hpx::id_type unregister_name(std::string const &name, error_code &ec = throws)#
-
hpx::future<hpx::id_type> resolve_name_async(std::string const &name)#
Query for the global address associated with a given global name.
This function returns the global address associated with the given global name.
This function returns true if it returned global address (id), which is currently associated with the given global name, and it returns false, if currently there is no association for this global name. Any error results in an exception thrown from this function.
Note
As long as ec is not pre-initialized to hpx::throws this function doesn’t throw but returns the result code using the parameter ec. Otherwise it throws an instance of hpx::exception.
- Parameters
name – [in] The global name (string) for which the currently associated global address has to be retrieved.
ec – [in,out] this represents the error status on exit, if this is pre-initialized to hpx::throws the function will throw on error instead.
- Returns
[out] The id currently associated with the given global name (valid only if the return value is true).
-
hpx::id_type resolve_name(std::string const &name, error_code &ec = throws)#
-
future<hpx::id_type> on_symbol_namespace_event(std::string const &name, bool call_for_past_events = false)#
Install a listener for a given symbol namespace event.
This function installs a listener for a given symbol namespace event. It returns a future which becomes ready as a result of the listener being triggered.
Note
The only event type which is currently supported is symbol_ns_bind, i.e. the listener is triggered whenever a global id is registered with the given name.
- Parameters
name – [in] The global name (string) for which the given event should be triggered.
evt – [in] The event for which a listener should be installed.
call_for_past_events – [in, optional] Trigger the listener even if the given event has already happened in the past. The default for this parameter is false.
- Returns
A future instance encapsulating the global id which is causing the registered listener to be triggered.
-
void update_cache_entry(naming::gid_type const &gid, gva const &gva, error_code &ec = throws)#
Warning
This function is for internal use only. It is dangerous and may break your code if you use it.
-
inline void update_cache_entry(naming::gid_type const &gid, naming::address const &addr, std::uint64_t count = 0, std::uint64_t offset = 0, error_code &ec = throws)#
Warning
This function is for internal use only. It is dangerous and may break your code if you use it.
-
bool get_cache_entry(naming::gid_type const &gid, gva &gva, naming::gid_type &idbase, error_code &ec = throws)#
Warning
This function is for internal use only. It is dangerous and may break your code if you use it.
-
void remove_cache_entry(naming::gid_type const &id, error_code &ec = throws)#
Warning
This function is for internal use only. It is dangerous and may break your code if you use it.
-
void clear_cache(error_code &ec = throws)#
Warning
This function is for internal use only. It is dangerous and may break your code if you use it.
-
void start_shutdown(error_code &ec = throws)#
-
hpx::future<std::pair<hpx::id_type, naming::address>> begin_migration(hpx::id_type const &id)#
start/stop migration of an object
- Returns
Current locality and address of the object to migrate
-
std::pair<bool, components::pinned_ptr> was_object_migrated(naming::gid_type const &gid, hpx::move_only_function<components::pinned_ptr()> &&f)#
Maintain list of migrated objects.
-
hpx::future<void> mark_as_migrated(naming::gid_type const &gid, hpx::move_only_function<std::pair<bool, hpx::future<void>>()> &&f, bool expect_to_be_marked_as_migrating)#
Mark the given object as being migrated (if the object is unpinned). Delay migration until the object is unpinned otherwise.
Public Members
-
mutable mutex_type gva_cache_mtx_#
-
std::shared_ptr<gva_cache_type> gva_cache_#
-
mutable mutex_type migrated_objects_mtx_#
-
migrated_objects_table_type migrated_objects_table_#
-
mutable mutex_type console_cache_mtx_#
-
mutex_type refcnt_requests_mtx_#
-
bool enable_refcnt_caching_#
-
std::shared_ptr<refcnt_requests_type> refcnt_requests_#
-
const service_mode service_type#
-
const runtime_mode runtime_type#
-
const bool caching_#
-
const bool range_caching_#
-
const threads::thread_priority action_priority_#
-
symbol_namespace symbol_ns_#
-
primary_namespace primary_ns_#
-
mutable mutex_type resolved_localities_mtx_#
-
resolved_localities_type resolved_localities_#
Protected Functions
-
void launch_bootstrap(parcelset::endpoints_type const &endpoints, util::runtime_configuration &rtcfg)#
Private Functions
-
void send_refcnt_requests(std::unique_lock<mutex_type> &l, error_code &ec = throws)#
Assumes that refcnt_requests_mtx_ is locked.
-
void send_refcnt_requests_non_blocking(std::unique_lock<mutex_type> &l, error_code &ec)#
Assumes that refcnt_requests_mtx_ is locked.
-
std::vector<hpx::future<std::vector<std::int64_t>>> send_refcnt_requests_async(std::unique_lock<mutex_type> &l)#
Assumes that refcnt_requests_mtx_ is locked.
-
void send_refcnt_requests_sync(std::unique_lock<mutex_type> &l, error_code &ec)#
Assumes that refcnt_requests_mtx_ is locked.
-
using component_id_type = components::component_type#
-
struct addressing_service#
-
namespace agas#