DEADLINE
-
The DEADLINE QoS policy allows the application to detect when data is not written or read within a specified amount of time. This policy applies to the topic, data writer, and data reader entities via the
deadline
member of their respective QoS structures. Below is the IDL related to the deadline QoS policy.
struct DeadlineQosPolicy {
Duration_t period;
};
-
The default value of the
period
member is infinite, which requires no behavior. When this policy is set to a finite value, then the data writer monitors the changes to data made by the application and indicates failure to honor the policy by setting the corresponding status condition and triggering the
on_offered_deadline_missed()
listener callback. A data reader that detects that the data has not changed before the
period
has expired sets the corresponding status condition and triggers the
on_requested_deadline_missed()
listener callback.
-
This policy is considered during the creation of associations between data writers and data readers. The value of both sides of the association must be compatible in order for an association to be created. The deadline period of the data reader must be greater than or equal to the corresponding value of data writer.
-
The value of this policy may change after the associated entity is enabled. In the case where the policy of a data reader or data writer is made, the change is successfully applied only if the change remains consistent with the remote end of all associations in which the reader or writer is participating. If the policy of a topic is changed, it will affect only data readers and writers that are created after the change has been made. Any existing readers or writers, and any existing associations between them, will not be affected by the topic policy value change.