[TIBCO.EMS .NET client library 5.1 documentation]

Sends a message to a queue for an unidentified message producer. Uses the QueueSender's default delivery mode, priority, and time to live.

Namespace:  TIBCO.EMS
Assembly:  TIBCO.EMS (in TIBCO.EMS.dll)

Syntax

public void Send(
	Queue queue,
	Message message,
	MessageDeliveryMode deliveryMode,
	int priority,
	long timeToLive
)
Public Sub Send ( _
	queue As Queue, _
	message As Message, _
	deliveryMode As MessageDeliveryMode, _
	priority As Integer, _
	timeToLive As Long _
)
public:
void Send(
	Queue^ queue, 
	Message^ message, 
	MessageDeliveryMode deliveryMode, 
	int priority, 
	long long timeToLive
)

Parameters

queue
Type: TIBCO.EMS..::.Queue
the queue to send this message to
message
Type: TIBCO.EMS..::.Message
The message to send.
deliveryMode
Type: TIBCO.EMS..::.MessageDeliveryMode
The delivery mode to use. 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.
priority
Type: System..::.Int32

The priority for this message.

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.

timeToLive
Type: System..::.Int64

The message's lifetime (in milliseconds) before it expires.

  • 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.

Remarks

Typically, a message producer is assigned a queue at creation time; however, the TIBCO EMS .NET API also supports unidentified message producers, which require that the queue be supplied every time a message is sent.

See Also