类
GioSocketConnection
自2.22开始
描述 [源码]
class Gio.SocketConnection : Gio.IOStream
{
priv: GSocketConnectionPrivate*
}
GSocketConnection 是一个用于连接的套接字的 GIOStream。它们可以在连接到主机时由 GSocketClient 创建,或者在接受新 GSocketListener 时创建。
从这些调用返回的 GSocketConnection 对象的类型取决于所使用的底层套接字类型。例如,对于 TCP/IP 连接,它将是一个 GTcpConnection。
选择要构建的对象类型是通过套接字连接工厂完成的,第三方可以使用 g_socket_connection_factory_register_type() 为特定的套接字家族/类型/协议组合注册自定义套接字连接类型。
要关闭 GSocketConnection,请使用 g_io_stream_close()。单独关闭 GIOStream 的子流将不会关闭底层的 GSocket。
自2.22可用
函数
g_socket_connection_factory_lookup_type
查找在具有指定的 family、type 和 protocol_id 的套接字上创建套接字连接时要使用的 GType。
自2.22开始
g_socket_connection_factory_register_type
查找在具有指定的 family、type 和 protocol 的套接字上创建套接字连接时要使用的 GType。
自2.22开始
实例方法
g_socket_connection_get_socket
获取连接的底层 GSocket 对象。如果您想要在该对象上执行不支持通过 GSocketConnection API 执行的操作,这将很有用。
自2.22开始
g_socket_connection_is_connected
检查 connection 是否已连接。这与在 connection‘ 的底层 GSocket 上调用 g_socket_is_connected() 相等。
自2.32开始
从 GIOStream 继承的方法(10)
g_io_stream_clear_pending
清除 stream 上的挂起标志。
自2.22开始
g_io_stream_close
关闭流,释放相关的资源。如果单独的输入和输出流尚未关闭,它们也将被关闭。
自2.22开始
g_io_stream_close_async
请求对流的异步关闭,释放相关的资源。当操作完成时,将调用callback。然后您可以调用g_io_stream_close_finish()来获取操作的结果。
自2.22开始
g_io_stream_close_finish
关闭流。
自2.22开始
g_io_stream_get_input_stream
获取此对象的输入流。这用于读取。
自2.22开始
g_io_stream_get_output_stream
获取此对象的输出流。这用于写入。
自2.22开始
g_io_stream_has_pending
检查流是否有待进行的操作。
自2.22开始
g_io_stream_is_closed
检查流是否已关闭。
自2.22开始
g_io_stream_set_pending
将stream设置为有操作待处理。如果待处理标志已设置或stream已关闭,它将返回FALSE并设置error。
自2.22开始
g_io_stream_splice_async
异步连接stream1的输出流到stream2的输入流,并连接stream2的输出流到stream1的输入流。
since: 2.28
属性
从GIOStream继承的属性(3)
Gio.IOStream:closed
流是否已关闭。
自2.22开始
Gio.IOStream:input-stream
读取的GInputStream。
自2.22开始
Gio.IOStream:output-stream
写入的GOutputStream。
自2.22开始
信号
从GObject继承的信号(1)
GObject::notify
当对象的一个属性通过 g_object_set_property(), g_object_set() 等设置其值时,发出此通知信号。
类结构
struct GioSocketConnectionClass {
GIOStreamClass parent_class;
void (* _g_reserved1) (
void
);
void (* _g_reserved2) (
void
);
void (* _g_reserved3) (
void
);
void (* _g_reserved4) (
void
);
void (* _g_reserved5) (
void
);
void (* _g_reserved6) (
void
);
}
无描述可用。
类成员
parent_class: GIOStreamClass无描述可用。
_g_reserved1: void (* _g_reserved1) ( void )无描述可用。
_g_reserved2: void (* _g_reserved2) ( void )无描述可用。
_g_reserved3: void (* _g_reserved3) ( void )无描述可用。
_g_reserved4: void (* _g_reserved4) ( void )无描述可用。
_g_reserved5: void (* _g_reserved5) ( void )无描述可用。
_g_reserved6: void (* _g_reserved6) ( void )无描述可用。