GObject.Object.notify_by_pspec

### Method

# GObject Objectnotify_by_pspec

since: 2.26

#### Declaration [src]

    void
    g_object_notify_by_pspec (
      GObject* object,
      GParamSpec* pspec
    )

#### Description [src]

Emits a “notify” signal for the property specified by `pspec` on `object`.

This function omits the property name lookup, hence it is faster than g_object_notify().

One way to avoid using `g_object_notify()` from within the class that registered the properties, and using `g_object_notify_by_pspec()` instead, is to store the GParamSpec used with `g_object_class_install_property()` inside a static array, e.g.:

      typedef enum
      {
        PROP_FOO = 1,
        PROP_LAST
      } MyObjectProperty;

      static GParamSpec *properties[PROP_LAST];

      static void
      my_object_class_init (MyObjectClass *klass)
      {
        properties[PROP_FOO] = g_param_spec_int ("foo", NULL, NULL,
                                                 0, 100,
                                                 50,
                                                 G_PARAM_READWRITE | G_PARAM_STATIC_STRINGS);
        g_object_class_install_property (gobject_class,
                                         PROP_FOO,
                                         properties[PROP_FOO]);
      }

and then notify a change on the “foo” property with:

      g_object_notify_by_pspec (self, properties[PROP_FOO]);

Available since: 2.26

#### Parameters

`pspec`

  Type: `GParamSpec`

  The `GParamSpec` of a property installed on the class of `object`.

  The data is owned by the caller of the method.