### Function

# GObject signal_emit

since: 2.0

#### Declaration

    void
    g_signal_emit (
      GObject* instance,
      guint signal_id,
      GQuark detail,
      ...
    )

#### Description

Emits a signal. Signal emission is done synchronously. The method will only return control after all handlers are called or signal emission was stopped.

Note that `g_signal_emit()` resets the return value to the default if no handlers are connected, in contrast to g_signal_emitv().

Available since: 2.0

This function is not directly available to language bindings.

#### Parameters

`instance`

  Type: `GObject`

  The instance the signal is being emitted on.

  The data is owned by the caller of the function.

`signal_id`

  Type: `guint`

  The signal id.

`detail`

  Type: `GQuark`

  The detail.

`...`

  Type: ``

  Parameters to be passed to the signal, followed by a location for the return value. If the return type of the signal is `G_TYPE_NONE`, the return value location can be omitted.