信号

GioDBusServer::new-connection

自:2.26

声明

gboolean
new_connection (
  GDBusServer* self,
  GDBusConnection* connection,
  gpointer user_data
)

描述 [源代码]

当建立了新的认证连接时发出。使用 g_dbus_connection_get_peer_credentials() 查找(如果有)已认证的身份。

如果你想接受连接,请引用 connection 对象并返回 TRUE。当你完成连接调用时,调用 g_dbus_connection_close() 并放弃你的引用。注意,另一端可以在任何时候断开连接 -- 接受连接时通常的做法是监听 GDBusConnection::closed 信号。

如果 GDBusServer:flags 包含 G_DBUS_SERVER_FLAGS_RUN_IN_THREAD,则信号在新线程中发出,该线程专门用于连接。否则,信号在 server 构造的 [thread-default main context][g-main-context-push-thread-default] 线程中发出。

你将保证该信号的信号处理程序在处理 connection 上的传入消息之前运行。这意味着在信号处理程序中调用 g_dbus_connection_register_object() 或类似的方法是合适的。

默认处理程序

在通过 g_signal_connect() 添加的处理程序之后调用默认处理程序。

自2.26可用

参数

connection

类型: GDBusConnection

新的连接的 GDBusConnection

数据由函数的调用者拥有。

返回值

类型: gboolean

TRUE 标示接受 connectionFALSE 让其他处理程序运行。