public void run_in_thread_sync (TaskThreadFunc task_func)
task_func in another thread, and waits for it to return or be cancelled.
You can use propagate_pointer, etc, afterward to get the result of
See TaskThreadFunc for more details about how
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. completed
will be set to true just before this function returns.
Although GLib currently rate-limits the tasks queued via run_in_thread_sync, 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.