There are several methods to fine-tune the behaviour of TCP/IP connections.
In case you need even more control you must retrieve the current file handle
with getHandle()
or getServerHandle()
and call the appropriate operating system call.
ulxmlrpcpp tries to remain portable over all common platforms. Unfortunately the following function may differ slightly on platforms. When using the above mentioned handles on more specialized behaviour you might become even more non-portable.
Under normal circumstances the TCP stack tries to buffer data and send optimal large packets. So data is sent when either the buffer is full or some timeout expires.
Unfortunately this behaviour might slowdown your XML-RPC transactions as
there are
often rather small packets below the buffer threshold. Then each transaction
is delayed some time. If you experience a significant slowdown and even have
low system load you might disable the buffer mechanism with
setTcpNoDelay(true)
. In this case all data is sent immediately
even if the size is smaller than the optimal transmission size of the network
connection.