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)
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

index 8a7161e..96d503a 100644 (file)
@@ -1,3 +1,9 @@
+2003-07-09  Matthias Clasen  <maclas@gmx.de>
+
+       * glib/tmpl/threads.sgml: Document GOnce, GOnceStatus, G_ONCE_INIT, g_once and g_once_impl.
+
+       * glib/glib-sections.txt: Add GOnce, GOnceStatus, G_ONCE_INIT, g_once and g_once_impl.
+
 2003-07-02  Matthias Clasen  <maclas@gmx.de>
 
        * glib/tmpl/string_utils.sgml: Move g_strfreev() docs inline.