Task.runInThreadSync

Runs task_func in another thread, and waits for it to return or be cancelled. You can use gio.task.Task.propagatePointer, etc, afterward to get the result of task_func.

See #GTaskThreadFunc for more details about how task_func is handled.

Normally this is used with tasks created with a null callback, but note that even if the task does have a callback, it will not be invoked when task_func returns. #GTask:completed will be set to true just before this function returns.

Although GLib currently rate-limits the tasks queued via gio.task.Task.runInThreadSync, you should not assume that it will always do this. If you have a very large number of tasks to run, but don't want them to all run at once, you should only queue a limited number of them at a time.

class Task
void
runInThreadSync

Parameters

taskFunc gio.types.TaskThreadFunc

a #GTaskThreadFunc