### Method

# GLib MainContext iteration

#### Declaration [src]

    gboolean
    g_main_context_iteration (
      GMainContext* context,
      gboolean may_block
    )

#### Description [src]

Runs a single iteration for the given main loop. This involves checking to see if any event sources are ready to be processed, then if no events sources are ready and `may_block` is `TRUE`, waiting for a source to become ready, then dispatching the highest priority events sources that are ready. Otherwise, if `may_block` is `FALSE` sources are not waited to become ready, only those highest priority events sources will be dispatched (if any), that are ready at this given moment without further waiting.

Note that even when `may_block` is `TRUE`, it is still possible for `g_main_context_iteration()` to return `FALSE`, since the wait may be interrupted for other reasons than an event source becoming ready.

#### Parameters

`context`

  Type: `GMainContext`

  A `GMainContext` (if `NULL`, the global-default main context will be used).

  The argument can be `NULL`.

`may_block`

  Type: `gboolean`

  Whether the call may block.

#### Return value

Type: `gboolean`

`TRUE` if events were dispatched.