Task.this

Creates a #GTask acting on @source_object, which will eventually be used to invoke @callback in the current [thread-default main context][g-main-context-push-thread-default].

Call this in the "start" method of your asynchronous method, and pass the #GTask around throughout the asynchronous operation. You can use g_task_set_task_data() to attach task-specific data to the object, which you can retrieve later via g_task_get_task_data().

By default, if @cancellable is cancelled, then the return value of the task will always be %G_IO_ERROR_CANCELLED, even if the task had already completed before the cancellation. This allows for simplified handling in cases where cancellation may imply that other objects that the task depends on have been destroyed. If you do not want this behavior, you can use g_task_set_check_cancellable() to change it.

  1. this(GTask* gTask, bool ownedRef)
  2. this(ObjectG sourceObject, Cancellable cancellable, GAsyncReadyCallback callback, void* callbackData)

Parameters

sourceObject ObjectG

the #GObject that owns this task, or %NULL.

cancellable Cancellable

optional #GCancellable object, %NULL to ignore.

callback GAsyncReadyCallback

a #GAsyncReadyCallback.

callbackData void*

user data passed to @callback.

Return: a #GTask.

Throws

ConstructionException GTK+ fails to create the object.

Meta

Since

2.36