函数
GioDBusProxynew
自:2.26
声明 [源代码]
void
g_dbus_proxy_new (
GDBusConnection* connection,
GDBusProxyFlags flags,
GDBusInterfaceInfo* info,
const gchar* name,
const gchar* object_path,
const gchar* interface_name,
GCancellable* cancellable,
GAsyncReadyCallback callback,
gpointer user_data
)
描述 [源代码]
为访问在远程对象 object_path
上 interface_name
的接口创建代理,且该接口由 name
拥有,且位于 connection
上,除非使用了 G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES
标志。连接到 GDBusProxy::g-properties-changed
信号以接收属性更改的通知。
如果未设置 G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS
标志,也会设置信号匹配规则。连接到 GDBusProxy::g-signal
信号以处理来自远程对象的信号。
如果同时设置了 G_DBUS_PROXY_FLAGS_DO_NOT_LOAD_PROPERTIES
和 G_DBUS_PROXY_FLAGS_DO_NOT_CONNECT_SIGNALS
标志,则此构造函数保证立即完成,而不会阻塞。
如果 name
是一个已知名称,并且未设置 G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START
和 G_DBUS_PROXY_FLAGS_DO_NOT_AUTO_START_AT_CONSTRUCTION
标志,并且当前没有名称所有者,将请求消息总线启动该名称的所有者。
这是一个可失败的异步构造函数 - 当代理准备就绪时,将调用 callback
,然后可以使用 g_dbus_proxy_new_finish()
获取结果。
请参阅 g_dbus_proxy_new_sync()
以获取此构造函数的同步版本。
在 [示例][gdbus-wellknown-proxy] 中使用了 GDBusProxy
。
自:2.26
此函数异步完成。请在 GAsyncReadyCallback
内部使用 g_dbus_proxy_new_finish()
获取操作的结果。
参数
connection
-
类型:
GDBusConnection
一个
GDBusConnection
。数据由函数的调用者拥有。 flags
-
类型:
GDBusProxyFlags
在构建代理时使用的标志。
info
-
一个
GDBusInterfaceInfo
,指定proxy
符合的最小接口,或NULL
。参数可以是 NULL
。数据由函数的调用者拥有。 name
-
类型: `const gchar*`
一个总线名称(已知或唯一)或如果
connection
不是一个消息总线连接,则为NULL
。参数可以是 NULL
。数据由函数的调用者拥有。 值是一个以 NUL 结束的 UTF-8 字符串。 object_path
-
类型: `const gchar*`
一个对象路径。
数据由函数的调用者拥有。 值是一个以 NUL 结束的 UTF-8 字符串。 interface_name
-
类型: `const gchar*`
一个 D-Bus 接口名称。
数据由函数的调用者拥有。 值是一个以 NUL 结束的 UTF-8 字符串。 cancellable
-
类型:
GCancellable
一个
GCancellable
或NULL
。参数可以是 NULL
。数据由函数的调用者拥有。 callback
-
当代理准备好时调用的回调函数。
user_data
-
类型:
gpointer
传递给
callback
的用户数据。参数可以是 NULL
。数据由函数的调用者拥有。