X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=glib%2Fgthreadprivate.h;h=198b29a6ecb6952d33484ca9713f982802b8ed75;hb=4454b815367831a71b1ae00b0182b5b389a78df2;hp=a9cb88a27ab10f4313b6afbcffeff570a1aef266;hpb=1f34ef4117559f268257d902dd48ea91b3d4993e;p=platform%2Fupstream%2Fglib.git diff --git a/glib/gthreadprivate.h b/glib/gthreadprivate.h index a9cb88a..198b29a 100644 --- a/glib/gthreadprivate.h +++ b/glib/gthreadprivate.h @@ -16,57 +16,45 @@ * * You should have received a copy of the GNU Lesser General Public * License along with the Gnome Library; see the file COPYING.LIB. If not, - * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, - * Boston, MA 02111-1307, USA. + * see . */ #ifndef __G_THREADPRIVATE_H__ #define __G_THREADPRIVATE_H__ #include "deprecated/gthread.h" -#include "garray.h" -#include "gslist.h" - -G_BEGIN_DECLS typedef struct _GRealThread GRealThread; -typedef void (*GThreadSetup) (GRealThread *thread); - -G_GNUC_INTERNAL void g_system_thread_self (gpointer thread); -G_GNUC_INTERNAL void g_system_thread_join (gpointer thread); -G_GNUC_INTERNAL void g_system_thread_create (GThreadFunc func, - gpointer data, - gulong stack_size, - gboolean joinable, - gpointer thread, - GError **error); - -G_GNUC_INTERNAL void g_system_thread_exit (void); -G_GNUC_INTERNAL void g_system_thread_set_name (const gchar *name); - -G_GNUC_INTERNAL GThread *g_thread_new_internal (const gchar *name, - GThreadFunc func, - gpointer data, - gboolean joinable, - gsize stack_size, - GThreadSetup setup_func, - GError **error); - struct _GRealThread { GThread thread; - const gchar *name; - GThreadSetup setup_func; + + gint ref_count; + gboolean ours; + gchar *name; gpointer retval; - GSystemThread system_thread; }; -G_GNUC_INTERNAL extern GMutex g_once_mutex; +/* system thread implementation (gthread-posix.c, gthread-win32.c) */ +void g_system_thread_wait (GRealThread *thread); + +GRealThread * g_system_thread_new (GThreadFunc func, + gulong stack_size, + GError **error); +void g_system_thread_free (GRealThread *thread); + +void g_system_thread_exit (void); +void g_system_thread_set_name (const gchar *name); + -#ifdef G_OS_WIN32 -G_GNUC_INTERNAL void g_thread_DllMain (void); -#endif +/* gthread.c */ +GThread * g_thread_new_internal (const gchar *name, + GThreadFunc proxy, + GThreadFunc func, + gpointer data, + gsize stack_size, + GError **error); -G_END_DECLS +gpointer g_thread_proxy (gpointer thread); #endif /* __G_THREADPRIVATE_H__ */