<p>Determines whether the JMS server delivers smaller messages
before larger ones when a destination has exceeded its maximum
number of messages. <code>FIFO</code> prevents the JMS server from
delivering smaller messages when larger ones are already waiting
for space. <code>Preemptive</code> allows smaller send requests to
preempt previous larger ones when there is sufficient space for
smaller messages on the destination.</p>
<p>This policy is defined only for the JMS server; it cannot be set
on individual destinations.</p>
<p>Additional information on the <code>FIFO</code> and
<code>Preemptive</code> policies is provided below.</p>
<p>
<code>FIFO</code> (first in, first out) indicates that all send requests
for the same destination are queued up one behind the other until
space is available. No send request is permitted to successfully
complete if there is another send request waiting for space before
it. When space is limited, the FIFO policy prevents the starvation
of larger requests because smaller requests cannot continuously use
the remaining available space. Smaller requests are delayed, though
not starved, until the larger request can be completed. When space
does become available, requests are considered in the order in
which they were made.
If there is sufficient space for a given request, then that
request is completed and the next request is considered. If there
is insufficient space for a given request, then no further requests
are considered until sufficient space becomes available for the
current request to complete.</p>
<p>
<code>Preemptive</code> indicates that a send operation can preempt other blocking send
operations if space is available. That is, if there is sufficient
space for the current request, then that space is used even if
there are other requests waiting for space. When space is limited,
the Preemptive policy can result in the starvation of larger
requests. For example, if there is insufficient available space for
a large request, then it is queued up behind other existing
requests. When space does become available, all requests are
considered in the order in which they were originally made.
If there is sufficient space for a given request, then that
request is allowed to continue and the next request is considered.
If there is insufficient space for a given request, then that
request is skipped and the next request is considered.</p>
(Interface=weblogic.management.configuration.JMSServerMBean Attribute=getBlockingSendPolicy)