return to the Quality of Service (QoS) Parameters
The LIFESPAN QoS avoids delivering “stale” data to the application.
Each data sample written by the DataWriter
has an associated ‘expiration time’ beyond which the data should not be delivered to any application. Once the sample expires, the data will be removed from the DataReader
caches as well as from the transient and persistent information caches.
The ‘expiration time’ of each sample is computed by adding the duration specified by the LIFESPAN QoS to the source
timestamp. As described in 2.2.2.4.2.11 and 2.2.2.4.2.12 the source timestamp is either automatically computed by the Service each time the DataWriter
write
operation is called, or else supplied by the application by means of the write_w_timestamp operation
.
This QoS relies on the sender and receiving applications having their clocks sufficiently synchronized. If this is not the case and the Service can detect it, the DataReader
is allowed to use the reception timestamp instead of the source timestamp in its computation of the ‘expiration time.’
Source: DDS 1.4 Spec