1 # This file makes most of the thread related macros look like
2 # functions, which they really were, if possible easy.
4 # default thread implementation
7 <NAME>G_THREADS_IMPL_POSIX</NAME>
8 #define G_THREADS_IMPL_POSIX
12 <NAME>G_THREADS_IMPL_SOLARIS</NAME>
13 #define G_THREADS_IMPL_SOLARIS
17 <NAME>G_THREADS_IMPL_NONE</NAME>
18 #define G_THREADS_IMPL_NONE
24 <NAME>g_thread_supported</NAME>
25 <RETURNS>gboolean</RETURNS>
31 <NAME>g_mutex_new</NAME>
32 <RETURNS>GMutex *</RETURNS>
36 <NAME>g_mutex_lock</NAME>
37 <RETURNS>void</RETURNS>
42 <NAME>g_mutex_trylock</NAME>
43 <RETURNS>gboolean</RETURNS>
48 <NAME>g_mutex_unlock</NAME>
49 <RETURNS>void</RETURNS>
54 <NAME>g_mutex_free</NAME>
55 <RETURNS>void</RETURNS>
62 <NAME>GStaticMutex</NAME>
66 <NAME>G_STATIC_MUTEX_INIT</NAME>
67 #define G_STATIC_MUTEX_INIT
71 <NAME>g_static_mutex_lock</NAME>
72 <RETURNS>void</RETURNS>
77 <NAME>g_static_mutex_trylock</NAME>
78 <RETURNS>gboolean</RETURNS>
83 <NAME>g_static_mutex_unlock</NAME>
84 <RETURNS>void</RETURNS>
89 <NAME>g_static_mutex_get_mutex</NAME>
90 <RETURNS>GMutex *</RETURNS>
97 <NAME>G_LOCK_DEFINE</NAME>
98 #define G_LOCK_DEFINE(name)
102 <NAME>G_LOCK_DEFINE_STATIC</NAME>
103 #define G_LOCK_DEFINE_STATIC(name)
107 <NAME>G_LOCK_EXTERN</NAME>
108 #define G_LOCK_EXTERN(name)
117 <NAME>G_UNLOCK</NAME>
118 #define G_UNLOCK(name)
122 <NAME>G_TRYLOCK</NAME>
123 #define G_TRYLOCK(name)
129 <NAME>g_cond_new</NAME>
130 <RETURNS>GCond*</RETURNS>
134 <NAME>g_cond_signal</NAME>
135 <RETURNS>void</RETURNS>
140 <NAME>g_cond_broadcast</NAME>
141 <RETURNS>void</RETURNS>
146 <NAME>g_cond_wait</NAME>
147 <RETURNS>void</RETURNS>
148 GCond *cond, GMutex *mutex
152 <NAME>g_cond_timed_wait</NAME>
153 <RETURNS>gboolean</RETURNS>
154 GCond *cond, GMutex *mutex, GTimeVal *abs_time
158 <NAME>g_cond_free</NAME>
159 <RETURNS>void</RETURNS>
166 <NAME>g_private_new</NAME>
167 <RETURNS>GPrivate*</RETURNS>
168 GDestroyNotify destructor
172 <NAME>g_private_get</NAME>
173 <RETURNS>gpointer</RETURNS>
174 GPrivate *private_key
178 <NAME>g_private_set</NAME>
179 <RETURNS>void</RETURNS>
180 GPrivate *private_key, gpointer data
186 <NAME>G_STATIC_PRIVATE_INIT</NAME>
187 #define G_STATIC_PRIVATE_INIT
190 # Definitions for different operating systems
193 <NAME>G_OS_UNIX</NAME>
198 <NAME>G_OS_WIN32</NAME>
203 <NAME>G_OS_BEOS</NAME>