信号
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
。数据由函数的调用者拥有。