Method
GioSocketsend
since: 2.22
Declaration
gssize
g_socket_send (
GSocket* socket,
const gchar* buffer,
gsize size,
GCancellable* cancellable,
GError** error
)
Description
Tries to send size bytes from buffer on the socket. This is
mainly used by connection-oriented sockets; it is identical to
g_socket_send_to() with address set to NULL.
If the socket is in blocking mode the call will block until there is
space for the data in the socket queue. If there is no space available
and the socket is in non-blocking mode a G_IO_ERROR_WOULD_BLOCK error
will be returned. To be notified when space is available, wait for the
G_IO_OUT condition. Note though that you may still receive
G_IO_ERROR_WOULD_BLOCK from g_socket_send() even if you were previously
notified of a G_IO_OUT condition. (On Windows in particular, this is
very common due to the way the underlying APIs work.)
On error -1 is returned and error is set accordingly.
Available since: 2.22
Parameters
buffer-
Type: An array of
guint8The buffer containing the data to send.
The length of the array is specified in the sizeargument.The data is owned by the caller of the method. size-
Type:
gsizeThe number of bytes to send.
cancellable-
Type:
GCancellableA %GCancellable or
NULL.The argument can be NULL.The data is owned by the caller of the method. error-
Type:
GError **The return location for a recoverable error.
The argument can be NULL.If the return location is not NULL, then you must initialize it to aNULLGError*.The argument will be left initialized to NULLby the method if there are no errors.In case of error, the argument will be set to a newly allocated GError; the caller will take ownership of the data, and be responsible for freeing it.