方法

GioTaskpropagate_value

自 2.64 版开始

声明 [src]

gboolean
g_task_propagate_value (
  GTask* task,
  GValue* value,
  GError** error
)

描述 [src]

获取 task 的结果作为一个 GValue,并将该值的所有权转让给调用者。与 g_task_return_value() 类似,这是一个通用底层方法;通常对 C 代码来说,g_task_propagate_pointer() 等会更有用。

如果任务产生错误或被取消,则此方法将设置 error 并返回 FALSE

由于此方法将返回值(或错误)的所有权转让给调用者,因此您只能调用它一次。

从 2.64 版开始可用

参数

value

类型: GValue

GValue 的返回位置。

该参数将由函数设置。
返回的数据由实例拥有。
error

类型: GError **

可恢复错误的返回位置。[glib错误报告规则]

该参数可以为 NULL
如果返回位置不为 NULL,则必须将其初始化为 NULLGError*
如果没有错误,方法将保持参数初始化为 NULL
在出现错误的情况下,参数将被设置为新分配的 GError;调用者将接管数据,并负责释放它。

返回值

类型: gboolean

如果 task 成功,则为 TRUE,出错时为 FALSE