### Method

# Qmi Device release_client

since: 1.0

#### Declaration [src]

    void
    qmi_device_release_client (
      QmiDevice* self,
      QmiClient* client,
      QmiDeviceReleaseClientFlags flags,
      guint timeout,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data
    )

#### Description [src]

Asynchronously releases the `QmiClient` from the `QmiDevice`.

Once the `QmiClient` has been released, it cannot be used any more to perform operations.

When the operation is finished `callback` will be called. You can then call `qmi_device_release_client_finish()` to get the result of the operation.

Available since: 1.0

This method completes asynchronously. Use `qmi_device_release_client_finish()` inside the `GAsyncReadyCallback` to obtain the result of the operation.

#### Parameters

`client`

  Type: `QmiClient`

  The `QmiClient` to release.

  The data is owned by the caller of the method.

`flags`

  Type: `QmiDeviceReleaseClientFlags`

  Mask of `QmiDeviceReleaseClientFlags` specifying how the client should be released.

`timeout`

  Type: `guint`

  Maximum time to wait.

`cancellable`

  Type: `GCancellable`

  Optional `GCancellable` object, `NULL` to ignore.

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

`callback`

  Type: `GAsyncReadyCallback`

  A `GAsyncReadyCallback` to call when the operation is finished.

  The argument can be `NULL`.

`user_data`

  Type: `gpointer`

  The data to pass to callback function.

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