MessageProducer.Send


Method

Declaration

virtual void Send( 
    Destination dest, 
    Message message, 
    MessageDeliveryMode deliveryMode, 
    int priority, 
    long timeToLive ); 
 
virtual void Send( 
    Message message, 
    MessageDeliveryMode deliveryMode, 
    int priority, 
    long timeToLive ); 
 
virtual void Send( 
    Destination dest, 
    Message message, 
    int deliveryMode, 
    int priority, 
    long timeToLive ); 
 
virtual void Send( 
    Message message, 
    int deliveryMode, 
    int priority, 
    long timeToLive ); 
 
virtual void Send( 
    Destination dest, 
    Message message ); 
 
virtual void Send( 
    Message message ); 

Purpose

Send a message.

Parameter
Description
dest
When present, the call sends the message to this destination (queue or topic).
When absent, the call sends the message to the producer’s default destination. When the producer does not specify a default, the send call must supply this parameter.
message
Send this message object.
deliveryMode
When present, the call sends the message with this delivery mode.
This argument may be either an enumerated value (see MessageDeliveryMode ) or an integer (see DeliveryMode ). We recommend enumerated values, because they enable .NET to do stronger type checking at compile time, which can enhance program reliability.
When absent, the call sends the message with the producer’s default delivery mode.
priority
When present, the call sends the message with this priority.
Priority affects the order in which the server delivers messages to consumers (higher values first). The JMS specification defines ten levels of priority value, from zero (lowest priority) to 9 (highest priority). The specification suggests that clients consider 0–4 as gradations of normal priority, and priorities 5–9 as gradations of expedited priority.
When absent, the call sends the message with the producer’s default priority.
timeToLive
When present, the call uses this value (in milliseconds) to compute the message expiration.
  • 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.
When absent, the call uses the producer’s default value to compute expiration.
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.


TIBCO Enterprise Message Service™ .NET Reference
System Release 4.3, February 2006
Copyright © TIBCO Software Inc. All rights reserved
www.tibco.com