ACE  6.0.6
Classes | Namespaces | Defines | Typedefs | Functions
OS_NS_Thread.h File Reference
#include "ace/config-all.h"
#include "ace/Global_Macros.h"
#include "ace/Basic_Types.h"
#include "ace/Default_Constants.h"
#include "ace/os_include/os_pthread.h"
#include "ace/os_include/os_sched.h"
#include "ace/Base_Thread_Adapter.h"
#include "ace/os_include/sys/os_sem.h"
#include "ace/os_include/os_semaphore.h"
#include "ace/OS_Memory.h"
#include "ace/OS_NS_signal.h"
#include "ace/ACE_export.h"
#include "ace/Object_Manager_Base.h"


class  ACE_recursive_thread_mutex_t
 Implement a thin C++ wrapper that allows nested acquisition and release of a mutex that occurs in the same thread. More...
struct  ACE_recursive_mutex_state
class  ACE_Thread_ID
 Defines a platform-independent thread ID class. Note that this class should be defined within the scope of a thread, rather than at global scope! More...
class  ACE_TSS_Ref
 "Reference count" for thread-specific storage keys. More...
class  ACE_TSS_Info
 Thread Specific Key management. More...
class  ACE_TSS_Keys
 Collection of in-use flags for a thread's TSS keys. For internal use only by ACE_TSS_Cleanup; it is public because some compilers can't use nested classes for template instantiation parameters. More...


namespace  ACE_OS

This namespace defines an OS independent programming API that shields developers from nonportable aspects of writing efficient system programs on Win32, POSIX and other versions of UNIX, and various real-time operating systems.


#define ACE_EXPORT_MACRO   ACE_Export
#define ACE_SCOPE_LWP   1
#define ACE_SCOPE_THREAD   2
#define ACE_SCHED_OTHER   0
#define ACE_SCHED_FIFO   1
#define ACE_SCHED_RR   2
#define ACE_THR_PRI_FIFO_DEF   0
#define ACE_SELF   (0)
#define ACE_OS_GUARD


typedef DWORD ACE_thread_t
typedef HANDLE ACE_hthread_t
typedef DWORD ACE_OS_thread_key_t
typedef ACE_OS_thread_key_t ACE_thread_key_t
typedef int ACE_Sched_Priority
typedef int ACE_idtype_t
typedef DWORD ACE_id_t
typedef int ACE_pri_t


void ACE_OS::cleanup_tss (const u_int main_thread)
int ACE_OS::lwp_getparams (ACE_Sched_Params &)
int ACE_OS::lwp_setparams (const ACE_Sched_Params &)
long ACE_OS::priority_control (ACE_idtype_t, ACE_id_t, int, void *)
 Low-level interface to priocntl(2).
int ACE_OS::scheduling_class (const char *class_name, ACE_id_t &)
 Find the scheduling class ID that corresponds to the class name.
int ACE_OS::set_scheduling_params (const ACE_Sched_Params &, ACE_id_t id=ACE_SELF)
 Friendly interface to priocntl(2).
int ACE_OS::sigtimedwait (const sigset_t *set, siginfo_t *info, const ACE_Time_Value *timeout)
int ACE_OS::sigwait (sigset_t *set, int *sig=0)
int ACE_OS::sigwaitinfo (const sigset_t *set, siginfo_t *info)
int ACE_OS::thr_cancel (ACE_thread_t t_id)
int ACE_OS::thr_cmp (ACE_hthread_t t1, ACE_hthread_t t2)
int ACE_OS::thr_continue (ACE_hthread_t target_thread)
int ACE_OS::thr_create (ACE_THR_FUNC func, void *args, long flags, ACE_thread_t *thr_id, ACE_hthread_t *t_handle=0, long priority=ACE_DEFAULT_THREAD_PRIORITY, void *stack=0, size_t stacksize=ACE_DEFAULT_THREAD_STACKSIZE, ACE_Base_Thread_Adapter *thread_adapter=0, const char **thr_name=0)
int ACE_OS::thr_equal (ACE_thread_t t1, ACE_thread_t t2)
void ACE_OS::thr_exit (ACE_THR_FUNC_RETURN status=0)
int ACE_OS::thr_getconcurrency (void)
int ACE_OS::thr_getprio (ACE_hthread_t id, int &priority)
int ACE_OS::thr_getprio (ACE_hthread_t id, int &priority, int &policy)
int ACE_OS::thr_getspecific (ACE_thread_key_t key, void **data)
int ACE_OS::thr_join (ACE_hthread_t waiter_id, ACE_THR_FUNC_RETURN *status)
int ACE_OS::thr_join (ACE_thread_t waiter_id, ACE_thread_t *thr_id, ACE_THR_FUNC_RETURN *status)
int ACE_OS::thr_get_affinity (ACE_hthread_t thr_id, size_t cpu_set_size, cpu_set_t *cpu_mask)
int ACE_OS::thr_set_affinity (ACE_hthread_t thr_id, size_t cpu_set_size, const cpu_set_t *cpu_mask)
int ACE_OS::thr_key_detach (ACE_thread_key_t key)
int ACE_OS::thr_key_used (ACE_thread_key_t key)
int ACE_OS::thr_keycreate (ACE_thread_key_t *key, ACE_THR_DEST)
int ACE_OS::thr_keyfree (ACE_thread_key_t key)
int ACE_OS::thr_kill (ACE_thread_t thr_id, int signum)
size_t ACE_OS::thr_min_stack (void)
ACE_thread_t ACE_OS::thr_self (void)
void ACE_OS::thr_self (ACE_hthread_t &)
const char * ACE_OS::thr_name (void)
int ACE_OS::thr_setcancelstate (int new_state, int *old_state)
int ACE_OS::thr_setcanceltype (int new_type, int *old_type)
int ACE_OS::thr_setconcurrency (int hint)
int ACE_OS::thr_setprio (ACE_hthread_t ht_id, int priority, int policy=-1)
int ACE_OS::thr_setprio (const ACE_Sched_Priority prio)
int ACE_OS::thr_setspecific (ACE_thread_key_t key, void *data)
int ACE_OS::thr_sigsetmask (int how, const sigset_t *nsm, sigset_t *osm)
int ACE_OS::thr_suspend (ACE_hthread_t target_thread)
void ACE_OS::thr_testcancel (void)
void ACE_OS::thr_yield (void)
void ACE_OS::unique_name (const void *object, char *name, size_t length)
int ACE_OS::condattr_init (ACE_condattr_t &attributes, int type=ACE_DEFAULT_SYNCH_TYPE)
int ACE_OS::condattr_destroy (ACE_condattr_t &attributes)
int ACE_OS::cond_broadcast (ACE_cond_t *cv)
int ACE_OS::cond_destroy (ACE_cond_t *cv)
int ACE_OS::cond_init (ACE_cond_t *cv, short type=ACE_DEFAULT_SYNCH_TYPE, const char *name=0, void *arg=0)
int ACE_OS::cond_init (ACE_cond_t *cv, ACE_condattr_t &attributes, const char *name=0, void *arg=0)
int ACE_OS::cond_init (ACE_cond_t *cv, short type, const wchar_t *name, void *arg=0)
int ACE_OS::cond_init (ACE_cond_t *cv, ACE_condattr_t &attributes, const wchar_t *name, void *arg=0)
int ACE_OS::cond_signal (ACE_cond_t *cv)
int ACE_OS::cond_timedwait (ACE_cond_t *cv, ACE_mutex_t *m, ACE_Time_Value *timeout)
int ACE_OS::cond_wait (ACE_cond_t *cv, ACE_mutex_t *m)
int ACE_OS::event_destroy (ACE_event_t *event)
int ACE_OS::event_init (ACE_event_t *event, int manual_reset=0, int initial_state=0, int type=ACE_DEFAULT_SYNCH_TYPE, const char *name=0, void *arg=0, LPSECURITY_ATTRIBUTES sa=0)
int ACE_OS::event_init (ACE_event_t *event, int manual_reset, int initial_state, int type, const wchar_t *name, void *arg=0, LPSECURITY_ATTRIBUTES sa=0)
int ACE_OS::event_pulse (ACE_event_t *event)
int ACE_OS::event_reset (ACE_event_t *event)
int ACE_OS::event_signal (ACE_event_t *event)
int ACE_OS::event_timedwait (ACE_event_t *event, ACE_Time_Value *timeout, int use_absolute_time=1)
int ACE_OS::event_wait (ACE_event_t *event)
int ACE_OS::mutex_destroy (ACE_mutex_t *m)
int ACE_OS::mutex_init (ACE_mutex_t *m, int lock_scope=ACE_DEFAULT_SYNCH_TYPE, const char *name=0, ACE_mutexattr_t *arg=0, LPSECURITY_ATTRIBUTES sa=0, int lock_type=0)
int ACE_OS::mutex_init (ACE_mutex_t *m, int lock_scope, const wchar_t *name, ACE_mutexattr_t *arg=0, LPSECURITY_ATTRIBUTES sa=0, int lock_type=0)
int ACE_OS::mutex_lock (ACE_mutex_t *m)
int ACE_OS::mutex_lock (ACE_mutex_t *m, int &abandoned)
int ACE_OS::mutex_lock (ACE_mutex_t *m, const ACE_Time_Value &timeout)
int ACE_OS::mutex_lock (ACE_mutex_t *m, const ACE_Time_Value *timeout)
void ACE_OS::mutex_lock_cleanup (void *mutex)
 Handle asynchronous thread cancellation cleanup.
int ACE_OS::mutex_trylock (ACE_mutex_t *m)
int ACE_OS::mutex_trylock (ACE_mutex_t *m, int &abandoned)
int ACE_OS::mutex_unlock (ACE_mutex_t *m)
int ACE_OS::recursive_mutex_cond_unlock (ACE_recursive_thread_mutex_t *m, ACE_recursive_mutex_state &state)
void ACE_OS::recursive_mutex_cond_relock (ACE_recursive_thread_mutex_t *m, ACE_recursive_mutex_state &state)
int ACE_OS::recursive_mutex_destroy (ACE_recursive_thread_mutex_t *m)
int ACE_OS::recursive_mutex_init (ACE_recursive_thread_mutex_t *m, const ACE_TCHAR *name=0, ACE_mutexattr_t *arg=0, LPSECURITY_ATTRIBUTES sa=0)
int ACE_OS::recursive_mutex_lock (ACE_recursive_thread_mutex_t *m)
int ACE_OS::recursive_mutex_lock (ACE_recursive_thread_mutex_t *m, const ACE_Time_Value &timeout)
int ACE_OS::recursive_mutex_lock (ACE_recursive_thread_mutex_t *m, const ACE_Time_Value *timeout)
int ACE_OS::recursive_mutex_trylock (ACE_recursive_thread_mutex_t *m)
int ACE_OS::recursive_mutex_unlock (ACE_recursive_thread_mutex_t *m)
int ACE_OS::rw_rdlock (ACE_rwlock_t *rw)
int ACE_OS::rw_tryrdlock (ACE_rwlock_t *rw)
int ACE_OS::rw_trywrlock (ACE_rwlock_t *rw)
int ACE_OS::rw_trywrlock_upgrade (ACE_rwlock_t *rw)
int ACE_OS::rw_unlock (ACE_rwlock_t *rw)
int ACE_OS::rw_wrlock (ACE_rwlock_t *rw)
int ACE_OS::rwlock_destroy (ACE_rwlock_t *rw)
int ACE_OS::rwlock_init (ACE_rwlock_t *rw, int type=ACE_DEFAULT_SYNCH_TYPE, const ACE_TCHAR *name=0, void *arg=0)
int ACE_OS::sched_params (const ACE_Sched_Params &, ACE_id_t id=ACE_SELF)
int ACE_OS::sema_destroy (ACE_sema_t *s)
int ACE_OS::sema_init (ACE_sema_t *s, u_int count, int type=ACE_DEFAULT_SYNCH_TYPE, const char *name=0, void *arg=0, int max=0x7fffffff, LPSECURITY_ATTRIBUTES sa=0)
int ACE_OS::sema_init (ACE_sema_t *s, u_int count, int type, const wchar_t *name, void *arg=0, int max=0x7fffffff, LPSECURITY_ATTRIBUTES sa=0)
int ACE_OS::sema_post (ACE_sema_t *s)
int ACE_OS::sema_post (ACE_sema_t *s, u_int release_count)
int ACE_OS::sema_trywait (ACE_sema_t *s)
int ACE_OS::sema_wait (ACE_sema_t *s)
int ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value &tv)
int ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value *tv)
int ACE_OS::semctl (int int_id, int semnum, int cmd, semun)
int ACE_OS::semget (key_t key, int nsems, int flags)
int ACE_OS::semop (int int_id, struct sembuf *sops, size_t nsops)
int ACE_OS::thread_mutex_destroy (ACE_thread_mutex_t *m)
int ACE_OS::thread_mutex_init (ACE_thread_mutex_t *m, int lock_type=0, const char *name=0, ACE_mutexattr_t *arg=0)
int ACE_OS::thread_mutex_init (ACE_thread_mutex_t *m, int lock_type, const wchar_t *name, ACE_mutexattr_t *arg=0)
int ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m)
int ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m, const ACE_Time_Value &timeout)
int ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m, const ACE_Time_Value *timeout)
int ACE_OS::thread_mutex_trylock (ACE_thread_mutex_t *m)
int ACE_OS::thread_mutex_unlock (ACE_thread_mutex_t *m)


ACE_thread_t ACE_OS::NULL_thread
ACE_hthread_t ACE_OS::NULL_hthread
ACE_thread_key_t ACE_OS::NULL_key

Detailed Description

OS_NS_Thread.h 93792 2011-04-07 11:48:50Z mcorino
Douglas C. Schmidt <>
Jesper S. M|ller<>
and a cast of thousands...

Originally in OS.h.

Define Documentation

#define ACE_EXPORT_MACRO   ACE_Export
#define ACE_OS_GUARD
#define ACE_SCHED_FIFO   1
#define ACE_SCHED_OTHER   0
#define ACE_SCHED_RR   2
#define ACE_SCOPE_LWP   1
#define ACE_SCOPE_THREAD   2
#define ACE_SELF   (0)
#define ACE_THR_PRI_FIFO_DEF   0

Typedef Documentation

typedef HANDLE ACE_hthread_t
typedef DWORD ACE_id_t
typedef int ACE_idtype_t
typedef DWORD ACE_OS_thread_key_t
typedef int ACE_pri_t
typedef int ACE_Sched_Priority
typedef DWORD ACE_thread_t
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines