[glib] GThread: make refcounting public



commit b0e73ca390d0f22baccc3636dd4d2e8e9cb0f58f
Author: Ryan Lortie <desrt desrt ca>
Date:   Thu Oct 13 00:29:04 2011 -0400

    GThread: make refcounting public

 glib/glib.symbols |    2 ++
 glib/gthread.c    |   12 +++++++++++-
 glib/gthread.h    |    2 ++
 3 files changed, 15 insertions(+), 1 deletions(-)
---
diff --git a/glib/glib.symbols b/glib/glib.symbols
index cd88f17..29d43a4 100644
--- a/glib/glib.symbols
+++ b/glib/glib.symbols
@@ -1100,9 +1100,11 @@ g_thread_init_glib
 g_thread_join
 g_thread_new
 g_thread_new_full
+g_thread_ref
 g_thread_self
 g_thread_set_priority
 g_thread_use_default_impl
+g_thread_unref
 g_thread_yield
 g_static_mutex_free
 g_static_mutex_get_mutex_impl
diff --git a/glib/gthread.c b/glib/gthread.c
index 29b102d..be3a12b 100644
--- a/glib/gthread.c
+++ b/glib/gthread.c
@@ -666,7 +666,17 @@ void
 
 /* GThread {{{1 -------------------------------------------------------- */
 
-static void
+GThread *
+g_thread_ref (GThread *thread)
+{
+  GRealThread *real = (GRealThread *) thread;
+
+  g_atomic_int_inc (&real->ref_count);
+
+  return thread;
+}
+
+void
 g_thread_unref (GThread *thread)
 {
   GRealThread *real = (GRealThread *) thread;
diff --git a/glib/gthread.h b/glib/gthread.h
index 072396f..5fa3362 100644
--- a/glib/gthread.h
+++ b/glib/gthread.h
@@ -137,6 +137,8 @@ struct _GOnce
 #  define G_TRYLOCK(name) g_mutex_trylock (&G_LOCK_NAME (name))
 #endif /* !G_DEBUG_LOCKS */
 
+GThread *       g_thread_ref                    (GThread        *thread);
+void            g_thread_unref                  (GThread        *thread);
 GThread *       g_thread_new                    (const gchar    *name,
                                                  GThreadFunc     func,
                                                  gpointer        data,



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]