信号
GioSocketClient::event
自 2.32 开始
声明
void
event (
GSocketClient* self,
GSocketClientEvent event,
GSocketConnectable* connectable,
GIOStream* connection,
gpointer user_data
)
描述 [src]
当客户端 connectable 的活动状态改变时发出。例如,可以用于在 UI 中提供网络连接的进度信息。不同 event 值的含义如下:
-
G_SOCKET_CLIENT_RESOLVING:客户端将开始对connectable在 DNS 中进行查找。connection将是NULL。 -
G_SOCKET_CLIENT RESOLVED:客户端已在 DNS 中成功解析connectable。connection将是NULL。 -
G_SOCKET_CLIENT_CONNECTING:客户端将开始与远程主机建立连接,可以是代理服务器或目的服务器本身。connection是GSocketConnection,尚未连接。从 GLib 2.40 开始,您可以通过 g_socket_connection_get_remote_address() 访问远程地址。 -
G_SOCKET_CLIENT_CONNECTED:客户端已成功连接到远程主机。connection是连接的GSocketConnection。 -
G_SOCKET_CLIENT_PROXY_NEGOTIATING:客户端将开始与代理协商以使其连接到connectable。connection是到代理服务器的GSocketConnection。 -
G_SOCKET_CLIENT_PROXY_NEGOTIATED:客户端已通过代理服务器协商连接到connectable。connection是来自 g_proxy_connect() 的流,可能是一个或不是一个GSocketConnection。 -
G_SOCKET_CLIENT_TLS_HANDSHAKING:客户端将开始进行 TLS 握手。connection是GTlsClientConnection。 -
G_SOCKET_CLIENT_TLS_HANDSHAKED:客户端已成功完成 TLS 握手。connection是GTlsClientConnection。 -
G_SOCKET_CLIENT_COMPLETE:客户端要么成功连接到connectable(在这种情况下,connection是它将返回给调用者的GSocketConnection),要么失败(在这种情况下,connection是NULL,客户端即将返回一个错误)。
除了 G_SOCKET_CLIENT_COMPLETE 之外,给定连接点的事件可能会多次发出(或根本不发出)。但是在客户端为给定的连接发出任何事件时,当完成时它将始终使用 G_SOCKET_CLIENT_COMPLETE 发出它。
注意,将来可能有额外的 GSocketClientEvent 值;未识别的事件值应忽略。
| 默认处理程序 默认处理程序在通过 |
| 自 2.32 起可用 |
参数
event-
正在发生的事件。
connectable-
event在其上发生的事件的GSocketConnectable。数据由函数的调用者拥有。 connection-
类型:
GIOStream当前的数据连接表示。
参数可以是 NULL。数据由函数的调用者拥有。