# tibemsMsgProducer_SetTimeToLive

Function

## Purpose

Set the time-to-live property of a producer object.

## C Declaration

    tibems_status tibemsMsgProducer_SetTimeToLive(
        tibemsMsgProducer msgProducer,
        tibems_long timeToLive );

## COBOL Call

    CALL "tibemsMsgProducer_SetTimeToLive"
         USING BY VALUE msgProducer,
               BY VALUE timeToLive,
               RETURNING tibems-status
    END-CALL.

Note: `msgProducer` has usage pointer.

## Parameters

Parameter | Description
--- | ---
`msgProducer` | Set the property of this producer.
`timeToLive` | Set the property to this value.

## Remarks

Time-to-live (in milliseconds) determines the expiration time of a message.

- If the time-to-live is non-zero, the expiration is the sum of that time-to-live and the sending client’s current time (GMT). This rule applies even within sessions with transaction semantics—the timer begins with the send call, not the commit call.
- If the time-to-live is zero, then expiration is also zero—indicating that the message never expires.

Programs can use this property to define a default time-to-live for messages that this producer sends. Individual sending calls can override this default value.

Whenever your application uses non-zero values for message expiration or time-to-live, you must ensure that clocks are synchronized among all the host computers that send and receive messages. Synchronize clocks to a tolerance that is a very small fraction of the smallest or time-to-live.

Copyright © Cloud Software Group, Inc. All rights reserved.