Interface

Gio-2.0GioThreadedSocketServiceSignalSignatures

interface SignalSignatures {
    event: (arg0: Gio.SocketListenerEvent, arg1: Gio.Socket) => void;
    incoming: (
        arg0: Gio.SocketConnection,
        arg1: GObject.Object,
    ) => boolean | void;
    notify: (arg0: GObject.ParamSpec) => void;
    "notify::active": (pspec: GObject.ParamSpec) => void;
    "notify::listen-backlog": (pspec: GObject.ParamSpec) => void;
    "notify::max-threads": (pspec: GObject.ParamSpec) => void;
    run: (arg0: Gio.SocketConnection, arg1: GObject.Object) => boolean | void;
}

Hierarchy (View Summary)

Index

Properties

Properties - Inherited from Gio.SocketService.SignalSignatures

Properties

"notify::active": (pspec: GObject.ParamSpec) => void
"notify::listen-backlog": (pspec: GObject.ParamSpec) => void
"notify::max-threads": (pspec: GObject.ParamSpec) => void
run: (arg0: Gio.SocketConnection, arg1: GObject.Object) => boolean | void

The ::run signal is emitted in a worker thread in response to an incoming connection. This thread is dedicated to handling connection and may perform blocking IO. The signal handler need not return until the connection is closed.

Properties - Inherited from Gio.SocketService.SignalSignatures

event: (arg0: Gio.SocketListenerEvent, arg1: Gio.Socket) => void

Emitted when listener's activity on socket changes state. Note that when listener is used to listen on both IPv4 and IPv6, a separate set of signals will be emitted for each, and the order they happen in is undefined.

2.46

incoming: (arg0: Gio.SocketConnection, arg1: GObject.Object) => boolean | void

The ::incoming signal is emitted when a new incoming connection to service needs to be handled. The handler must initiate the handling of connection, but may not block; in essence, asynchronous operations must be used.

connection will be unreffed once the signal handler returns, so you need to ref it yourself if you are planning to use it.

2.22

notify: (arg0: GObject.ParamSpec) => void

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Note that getting this signal doesn’t itself guarantee that the value of the property has actually changed. When it is emitted is determined by the derived GObject class. If the implementor did not create the property with GObject.ParamFlags.EXPLICIT_NOTIFY, then any call to g_object_set_property() results in ::notify being emitted, even if the new value is the same as the old. If they did pass GObject.ParamFlags.EXPLICIT_NOTIFY, then this signal is emitted only when they explicitly call g_object_notify() or g_object_notify_by_pspec(), and common practice is to do that only when the value has actually changed.

This signal is typically used to obtain change notification for a single property, by specifying the property name as a detail in the g_signal_connect() call, like this:

g_signal_connect (text_view->buffer, "notify::paste-target-list",
G_CALLBACK (gtk_text_view_target_list_notify),
text_view)

It is important to note that you must use [canonical parameter names][class@GObject.ParamSpec#parameter-names] as detail strings for the notify signal.