### Method

# Gio Cancellable cancel

#### Declaration [src]

    void
    g_cancellable_cancel (
      GCancellable* cancellable
    )

#### Description [src]

Will set `cancellable` to cancelled, and will emit the `GCancellable::cancelled` signal. (However, see the warning about race conditions in the documentation for that signal if you are planning to connect to it.)

This function is thread-safe. In other words, you can safely call it from a thread other than the one running the operation that was passed the `cancellable`.

If `cancellable` is `NULL`, this function returns immediately for convenience.

The convention within GIO is that cancelling an asynchronous operation causes it to complete asynchronously. That is, if you cancel the operation from the same thread in which it is running, then the operation’s `GAsyncReadyCallback` will not be invoked until the application returns to the main loop.

It is safe (although useless, since it will be a no-op) to call this function from a `GCancellable::cancelled` signal handler.

#### Parameters

`cancellable`

  Type: `GCancellable`

  A `GCancellable` object.

  The argument can be `NULL`.