|
globus_common
18.5
|
Globus Threading Abstraction. More...
Go to the source code of this file.
Data Structures | |
| union | globus_thread_t |
| Thread ID. More... | |
| union | globus_threadattr_t |
| Thread attributes. More... | |
| union | globus_mutex_t |
| Mutex. More... | |
| union | globus_cond_t |
| Condition variable. More... | |
| union | globus_mutexattr_t |
| Mutex attribute. More... | |
| union | globus_condattr_t |
| Condition variable attribute. More... | |
| union | globus_thread_key_t |
| Thread-specific data key. More... | |
| union | globus_thread_once_t |
| Thread once structure. More... | |
Macros | |
| #define | GLOBUS_THREAD_ONCE_INIT { .none = 0 } |
| Thread once initializer value. | |
| #define | GLOBUS_THREAD_CANCEL_DISABLE 0 |
| Disable thread cancellation value. More... | |
| #define | GLOBUS_THREAD_CANCEL_ENABLE 1 |
| Enable thread cancellation value. More... | |
| #define | GLOBUS_THREAD_MODULE (&globus_i_thread_module) |
| Thread Module. | |
Typedefs | |
| typedef void(* | globus_thread_key_destructor_func_t) (void *value) |
| Thread-specific data destructor. | |
Functions | |
| int | globus_thread_set_model (const char *model) |
| Select threading model for an application. More... | |
| int | globus_mutex_init (globus_mutex_t *mutex, globus_mutexattr_t *attr) |
| Initialize a mutex. More... | |
| int | globus_mutex_destroy (globus_mutex_t *mutex) |
| Destroy a mutex. More... | |
| int | globus_mutex_lock (globus_mutex_t *mutex) |
| Lock a mutex. More... | |
| int | globus_mutex_unlock (globus_mutex_t *mutex) |
| Unlock a mutex. More... | |
| int | globus_mutex_trylock (globus_mutex_t *mutex) |
| Lock a mutex if it is not locked. More... | |
| int | globus_cond_init (globus_cond_t *cond, globus_condattr_t *attr) |
| Initialize a condition variable. More... | |
| int | globus_cond_destroy (globus_cond_t *cond) |
| Destroy a condition variable. More... | |
| int | globus_cond_wait (globus_cond_t *cond, globus_mutex_t *mutex) |
| Wait for a condition to be signalled. More... | |
| int | globus_cond_timedwait (globus_cond_t *cond, globus_mutex_t *mutex, globus_abstime_t *abstime) |
| Wait for a condition to be signalled. More... | |
| int | globus_cond_signal (globus_cond_t *cond) |
| Signal a condition to a thread. More... | |
| int | globus_cond_broadcast (globus_cond_t *cond) |
| Signal a condition to multiple threads. More... | |
| int | globus_condattr_init (globus_condattr_t *cond_attr) |
| Initialize a condition variable attribute. More... | |
| int | globus_condattr_destroy (globus_condattr_t *cond_attr) |
| Destroy a condition attribute. More... | |
| int | globus_condattr_setspace (globus_condattr_t *cond_attr, int space) |
| Set callback space associated with a condition variable attribute. More... | |
| int | globus_condattr_getspace (globus_condattr_t *cond_attr, int *space) |
| Get callback space associated with a condition variable attribute. More... | |
| int | globus_thread_create (globus_thread_t *thread, globus_threadattr_t *attr, globus_thread_func_t func, void *user_arg) |
| Create a new thread. More... | |
| void * | globus_thread_getspecific (globus_thread_key_t key) |
| Get a thread-specific data value. More... | |
| int | globus_thread_setspecific (globus_thread_key_t key, void *value) |
| Set a thread-specific data value. More... | |
| int | globus_thread_key_create (globus_thread_key_t *key, globus_thread_key_destructor_func_t func) |
| Create a key for thread-specific storage. More... | |
| int | globus_thread_key_delete (globus_thread_key_t key) |
| Delete a thread-local storage key. More... | |
| int | globus_thread_once (globus_thread_once_t *once, void(*init_routine)(void)) |
| Execute a function one time. More... | |
| void | globus_thread_yield (void) |
| Yield execution to another thread. More... | |
| int | globus_thread_sigmask (int how, const sigset_t *newmask, sigset_t *oldmask) |
| Modify the current thread's signal mask. More... | |
| int | globus_thread_kill (globus_thread_t thread, int sig) |
| Send a signal to a thread. More... | |
| void | globus_thread_exit (void *value) |
| Terminate the current thread. More... | |
| globus_thread_t | globus_thread_self (void) |
| Determine the current thread's ID. More... | |
| int | globus_thread_equal (globus_thread_t thread1, globus_thread_t thread2) |
| Check whether thread identifiers match. More... | |
| globus_bool_t | globus_i_am_only_thread (void) |
| Determine if threads are supported. More... | |
| globus_bool_t | globus_thread_preemptive_threads (void) |
| Indicate whether the active thread model supports preemption. More... | |
| void * | globus_thread_cancellable_func (void *(*func)(void *), void *arg, void(*cleanup_func)(void *), void *cleanup_arg, globus_bool_t execute_cleanup) |
| Execute a function with thread cleanup in case of cancellation. More... | |
| int | globus_thread_cancel (globus_thread_t thr) |
| Cancel a thread. More... | |
| void | globus_thread_testcancel (void) |
| Thread cancellation point. More... | |
| int | globus_thread_setcancelstate (int state, int *oldstate) |
| Set the thread's cancellable state. More... | |
Globus Threading Abstraction.
Globus threads package which can work with either pthreads or without threads, depending on runtime configuration
1.8.18