Function Macro
GLibLOCK_DEFINE
since: 2.0
Description
The G_LOCK_ macros provide a convenient interface to GMutex.
G_LOCK_DEFINE defines a lock. It can appear in any place where
variable definitions may appear in programs, i.e. in the first block
of a function or outside of functions. The name parameter will be
mangled to get the name of the GMutex. This means that you
can use names of existing variables as the parameter - e.g. the name
of the variable you intend to protect with the lock. Look at our
give_me_next_number() example using the G_LOCK macros:
Here is an example for using the G_LOCK convenience macros:
G_LOCK_DEFINE (current_number);
int
give_me_next_number (void)
{
static int current_number = 0;
int ret_val;
G_LOCK (current_number);
ret_val = current_number = calc_next_number (current_number);
G_UNLOCK (current_number);
return ret_val;
}
Available since: 2.0
This function is not directly available to language bindings.