RTI Connext Java API Version 7.1.0
SystemResourceLimitsQosPolicy Class Reference

<<extension>> Configures com.rti.dds.domain.DomainParticipant-independent resources used by RTI Connext. Mainly used to change the maximum number of com.rti.dds.domain.DomainParticipant entities that can be created within a single process (address space). More...

Inheritance diagram for SystemResourceLimitsQosPolicy:
QosPolicy

Public Attributes

int max_objects_per_thread
 The maximum number of objects that can be stored per thread for a com.rti.dds.domain.DomainParticipantFactory. More...
 
int initial_objects_per_thread
 The number of objects per thread for a com.rti.dds.domain.DomainParticipantFactory for which infrastructure will initially be allocated. More...
 
- Public Attributes inherited from QosPolicy
final QosPolicyId_t id
 The ID of this QoS policy. More...
 
final String policy_name
 The name of this QoS policy. More...
 

Detailed Description

<<extension>> Configures com.rti.dds.domain.DomainParticipant-independent resources used by RTI Connext. Mainly used to change the maximum number of com.rti.dds.domain.DomainParticipant entities that can be created within a single process (address space).

Entity:
com.rti.dds.domain.DomainParticipantFactory
Properties:
RxO = N/A
Changeable = NO

Usage

Within a single process (or address space for some supported real-time operating systems), applications may create and use multiple com.rti.dds.domain.DomainParticipant entities. This QoS policy sets a parameter that places an effective upper bound on the maximum number of com.rti.dds.domain.DomainParticipant entities that can be created in a single process/address space. These values cannot be changed after a DomainParticipant has been created and they cannot be set in a QoS XML file.

Member Data Documentation

◆ max_objects_per_thread

int max_objects_per_thread

The maximum number of objects that can be stored per thread for a com.rti.dds.domain.DomainParticipantFactory.

This value is the upper bound on the number of objects that can be stored per thread. When a com.rti.dds.domain.DomainParticipantFactory is created, infrastructure will be created to manage the number of objects specified by initial_objects_per_thread. As more objects are required by the application, the infrastructure will be automatically grown to accommodate up to max_objects_per_thread objects. Leave this property set to the default value to allow the infrastructure to grow as needed. If you wish to strictly control memory allocation, set max_objects_per_thread to a smaller value, but note that this runs the risk of a runtime error and reduced application functionality if your limit is reached.

[default] 261120

[range] [1, 261120]

◆ initial_objects_per_thread

int initial_objects_per_thread

The number of objects per thread for a com.rti.dds.domain.DomainParticipantFactory for which infrastructure will initially be allocated.

The infrastructure for managing thread-specific objects will initially be sized according to this value. The infrastructure will grow automatically, up to a maximum of max_objects_per_thread, as required by the application at runtime. If you are certain that more than the default value of initial_objects_per_thread will be required for your application and you wish to reduce the number of memory allocations performed while your application reaches steady state, you may set this value to a larger number. To improve the efficiency of memory allocation, RTI Connext may initially size the infrastructure to a larger value than the value of initial_objects_per_thread. The infrastructure will never be sized less than initial_objects_per_thread or greater than max_objects_per_thread. When the infrastructure for managing thread-specific objects is created or increased, a log message stating "Allowed number of thread specific objects is now " will be produced at the local log level.

[default] 1024

[range] [1, 261120]; must be less than or equal to max_objects_per_thread