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

namespace hpx
namespace components


typedef abstract_component_base<Component> instead
template<typename Component, typename Derived>
class managed_component
#include <managed_component_base.hpp>

The managed_component template is used as a indirection layer for components allowing to gracefully handle the access to non-existing components.

Additionally it provides memory management capabilities for the wrapping instances, and it integrates the memory management with the AGAS service. Every instance of a managed_component gets assigned a global id. The provided memory management allocates the managed_component instances from a special heap, ensuring fast allocation and avoids a full network round trip to the AGAS service for each of the allocated instances.

Template Parameters
  • Component:

  • Derived: