### Function

# GLib atomic_pointer_set

since: 2.4

#### Declaration

    void
    g_atomic_pointer_set (
      void* atomic,
      gpointer newval
    )

#### Description

Sets the value of `atomic` to `newval`.

This call acts as a full compiler and hardware memory barrier (after the set).

While `atomic` has a `volatile` qualifier, this is a historical artifact and the pointer passed to it should not be `volatile`.

Available since: 2.4

#### Parameters

`atomic`

  Type: `void*`

  A pointer to a #gpointer-sized value.

  The data is owned by the caller of the function.

`newval`

  Type: `gpointer`

  A new value to store.

  The argument can be `NULL`.
  The data is owned by the caller of the function.