### Function

# Gio AsyncReadyCallback

#### Declaration

    void
    (* GAsyncReadyCallback) (
      GObject* source_object,
      GAsyncResult* res,
      gpointer data
    )

#### Description [src]

Type definition for a function that will be called back when an asynchronous operation within GIO has been completed. `GAsyncReadyCallback` callbacks from `GTask` are guaranteed to be invoked in a later iteration of the thread-default main context (see `g_main_context_push_thread_default()`) where the `GTask` was created. All other users of `GAsyncReadyCallback` must likewise call it asynchronously in a later iteration of the main context.

The asynchronous operation is guaranteed to have held a reference to `source_object` from the time when the `*_async()` function was called, until after this callback returns.

#### Parameters

`source_object`

  Type: `GObject`

  The object the asynchronous operation was started with.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`res`

  Type: `GAsyncResult`

  A `GAsyncResult`.

  The data is owned by the caller of the function.

`data`

  Type: `gpointer`

  User data passed to the callback.

  The argument can be `NULL`.
  The data is owned by the caller of the function.