Support for one-time initialization functions. (#69668, Sebastian
authorMatthias Clasen <maclas@gmx.de>
Tue, 8 Jul 2003 23:43:47 +0000 (23:43 +0000)
committerMatthias Clasen <matthiasc@src.gnome.org>
Tue, 8 Jul 2003 23:43:47 +0000 (23:43 +0000)
commitfe5c4f3e505da395e9fc76560aba210aa87767ea
treef375ed0fd238f535c809c84df07e8e4c35730b21
parent6e2d715fd8bf99dcd2076c3e316bf762e34bcb17
Support for one-time initialization functions. (#69668, Sebastian

2003-07-09  Matthias Clasen  <maclas@gmx.de>

Support for one-time initialization functions.  (#69668, Sebastian Wilhelmi)

* configure.in: Check whether double checked locking is safe, define g_once() in
glibconfig.h accordingly.
* glib/gthread.h: Add GOnce, GOnceStatus, G_ONCE_INIT and g_once_impl.
* glib/gthread.c (g_once_impl): Fallback implementation using a mutex if double checked
locking is unsafe.
* tests/thread-test.c: Add tests for g_once().
docs/reference/ChangeLog