方法
GioSocketset_timeout
自:2.26
声明 [源代码]
void
g_socket_set_timeout (
GSocket* socket,
guint timeout
)
描述 [源代码]
设置在几秒后,如果IO操作在socket上尚未完成,将超时。
在阻塞套接字上,这意味着任何阻塞的 GSocket
操作将在空闲 timeout
秒后超时,返回 G_IO_ERROR_TIMED_OUT
。
在非阻塞套接字上,调用 g_socket_condition_wait()
也会在给定时间后失败,返回 G_IO_ERROR_TIMED_OUT
。使用 g_socket_create_source()
创建的源在空闲 timeout
秒后触发,此时设置所请求的条件。此时调用 g_socket_receive()、g_socket_send()、g_socket_check_connect_result() 等会失败,返回 G_IO_ERROR_TIMED_OUT
。
如果 timeout
为 0(默认值),操作将永远不会自行超时。
注意,如果 I/O 操作被信号中断,这可能会重置超时。
自 2.26 版本起可用。