### Signal

# Soup Session::request-queued

since: 3.0

#### Declaration

    void
    request_queued (
      SoupSession* self,
      SoupMessage* msg,
      gpointer user_data
    )

#### Description [src]

Emitted when a request is queued on `session`.

When sending a request, first `SoupSession::request-queued` is emitted, indicating that the session has become aware of the request.

After a connection is available to send the request various `SoupMessage` signals are emitted as the message is processed. If the message is requeued, it will emit `SoupMessage::restarted`, which will then be followed by other `SoupMessage` signals when the message is re-sent.

Eventually, the message will emit `SoupMessage::finished`. Normally, this signals the completion of message processing. However, it is possible that the application will requeue the message from the “finished” handler. In that case the process will loop back.

Eventually, a message will reach “finished” and not be requeued. At that point, the session will emit `SoupSession::request-unqueued` to indicate that it is done with the message.

To sum up: `SoupSession::request-queued` and `SoupSession::request-unqueued` are guaranteed to be emitted exactly once, but `SoupMessage::finished` (and all of the other `SoupMessage` signals) may be invoked multiple times for a given message.

Default handler: The default handler is called after the handlers added via `g_signal_connect()`.
Available since: 3.0

#### Parameters

`msg`

  Type: `SoupMessage`

  The request that was queued.

  The data is owned by the caller of the function.