IContextChannel.AllowOutputBatching Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets or sets a value that instructs Windows Communication Foundation (WCF) to store a set of messages before giving the messages to the transport.
public:
property bool AllowOutputBatching { bool get(); void set(bool value); };
public bool AllowOutputBatching { get; set; }
member this.AllowOutputBatching : bool with get, set
Public Property AllowOutputBatching As Boolean
Property Value
true
if the batching of outgoing messages is allowed; otherwise, false
.
Remarks
The level of batching affects the performance of the system. When you set the value to true
, you are instructing the system to hold on to this message in a local buffer to send out with other serialized messages if possible. Set the AllowOutputBatching property to true
if message throughput is important; set it to false
if reducing latency is important. There are other knobs used to manage the batching of messages that are accessible from the binding elements used to configure a service. Properties common to connection-oriented transports such as TCP and named pipes that are used to tune performance are located, for example, on the ConnectionOrientedTransportBindingElement. The MaxOutputDelay is used to set the maximum interval of time that a chunk of a message or a full message can remain buffered in memory before being sent out and the ConnectionBufferSize determines the size of this local buffer, as well as the buffer sizes used by the underlying network objects.
The value of AllowOutputBatching does not override the value of the AllowOutputBatching property that is set at the channel level. For example, if AllowOutputBatching is set to true
for a particular message, that message is sent immediately regardless of the value of AllowOutputBatching.
Note
All request/reply messages are sent immediately regardless of the value of AllowOutputBatching.