RGtk2 (version 2.20.31)

gSocketSend: gSocketSend

Description

Tries to send size bytes from buffer on the socket. This is mainly used by connection-oriented sockets; it is identical to gSocketSendTo with address set to NULL.

Usage

gSocketSend(object, buffer, size, cancellable = NULL, .errwarn = TRUE)

Arguments

object
buffer
the buffer containing the data to send.
size
the number of bytes to send
cancellable
a GCancellable or NULL
.errwarn
Whether to issue a warning on error or fail silently

Value

A list containing the following elements:
retval
[integer] Number of bytes written (which may be less than size), or -1 on error
error
GError for error reporting, or NULL to ignore.

Details

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 gSocketSend 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. Since 2.22