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/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"
#include "ace/OS_NS_Thread.inl"

Include dependency graph for OS_NS_Thread.h:


Namespaces

namespace  ACE_OS

Classes

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...
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::condattr_init (ACE_condattr_t &attributes, int type=ACE_DEFAULT_SYNCH_TYPE)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::condattr_destroy (ACE_condattr_t &attributes)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_broadcast (ACE_cond_t *cv)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_destroy (ACE_cond_t *cv)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_init (ACE_cond_t *cv, short type=ACE_DEFAULT_SYNCH_TYPE, const char *name=0, void *arg=0)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_init (ACE_cond_t *cv, ACE_condattr_t &attributes, const char *name=0, void *arg=0)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_init (ACE_cond_t *cv, short type, const wchar_t *name, void *arg=0)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_init (ACE_cond_t *cv, ACE_condattr_t &attributes, const wchar_t *name, void *arg=0)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_signal (ACE_cond_t *cv)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_timedwait (ACE_cond_t *cv, ACE_mutex_t *m, ACE_Time_Value *)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::cond_wait (ACE_cond_t *cv, ACE_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::event_destroy (ACE_event_t *event)
ACE_NAMESPACE_INLINE_FUNCTION
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)
ACE_NAMESPACE_INLINE_FUNCTION
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)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::event_pulse (ACE_event_t *event)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::event_reset (ACE_event_t *event)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::event_signal (ACE_event_t *event)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::event_timedwait (ACE_event_t *event, ACE_Time_Value *timeout, int use_absolute_time=1)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::event_wait (ACE_event_t *event)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::mutex_destroy (ACE_mutex_t *m)
 Handle asynchronous thread cancellation cleanup.
ACE_NAMESPACE_INLINE_FUNCTION
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)
 Handle asynchronous thread cancellation cleanup.
ACE_NAMESPACE_INLINE_FUNCTION
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)
 Handle asynchronous thread cancellation cleanup.
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::mutex_lock (ACE_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::mutex_lock (ACE_mutex_t *m, int &abandoned)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::mutex_lock (ACE_mutex_t *m, const ACE_Time_Value &timeout)
ACE_NAMESPACE_INLINE_FUNCTION
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.
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::mutex_trylock (ACE_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::mutex_trylock (ACE_mutex_t *m, int &abandoned)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::mutex_unlock (ACE_mutex_t *m)
 Handle asynchronous thread cancellation cleanup.
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::recursive_mutex_cond_unlock (ACE_recursive_thread_mutex_t *m, ACE_recursive_mutex_state &state)
ACE_NAMESPACE_INLINE_FUNCTION
void 
ACE_OS::recursive_mutex_cond_relock (ACE_recursive_thread_mutex_t *m, ACE_recursive_mutex_state &state)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::recursive_mutex_destroy (ACE_recursive_thread_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
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)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::recursive_mutex_lock (ACE_recursive_thread_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::recursive_mutex_trylock (ACE_recursive_thread_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::recursive_mutex_unlock (ACE_recursive_thread_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::rw_rdlock (ACE_rwlock_t *rw)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::rw_tryrdlock (ACE_rwlock_t *rw)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::rw_trywrlock (ACE_rwlock_t *rw)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::rw_trywrlock_upgrade (ACE_rwlock_t *rw)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::rw_unlock (ACE_rwlock_t *rw)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::rw_wrlock (ACE_rwlock_t *rw)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::rwlock_destroy (ACE_rwlock_t *rw)
ACE_Export 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 &sched_params, ACE_id_t id)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sema_destroy (ACE_sema_t *s)
ACE_NAMESPACE_INLINE_FUNCTION
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)
ACE_NAMESPACE_INLINE_FUNCTION
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)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sema_post (ACE_sema_t *s)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sema_post (ACE_sema_t *s, u_int release_count)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sema_trywait (ACE_sema_t *s)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sema_wait (ACE_sema_t *s)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value &tv)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sema_wait (ACE_sema_t *s, ACE_Time_Value *tv)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::semctl (int int_id, int semnum, int cmd, semun)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::semget (key_t key, int nsems, int flags)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::semop (int int_id, struct sembuf *sops, size_t nsops)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thread_mutex_destroy (ACE_thread_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thread_mutex_init (ACE_thread_mutex_t *m, int lock_type=0, const char *name=0, ACE_mutexattr_t *arg=0)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thread_mutex_init (ACE_thread_mutex_t *m, int lock_type, const wchar_t *name, ACE_mutexattr_t *arg=0)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m, const ACE_Time_Value &timeout)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thread_mutex_lock (ACE_thread_mutex_t *m, const ACE_Time_Value *timeout)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thread_mutex_trylock (ACE_thread_mutex_t *m)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thread_mutex_unlock (ACE_thread_mutex_t *m)
ACE_Export ACE_thread_t ACE_OS::NULL_thread
ACE_Export ACE_hthread_t ACE_OS::NULL_hthread
ACE_Export ACE_thread_key_t ACE_OS::NULL_key

Defines

#define ACE_EXPORT_MACRO   ACE_Export
#define ACE_SCOPE_PROCESS   0
#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_THR_PRI_OTHER_DEF   0
#define ACE_DEFAULT_SYNCH_TYPE   USYNC_THREAD
#define ACE_SELF   (0)
#define ACE_KEY_INDEX(OBJ, KEY)   u_int OBJ = KEY
#define ACE_PTHREAD_CLEANUP_PUSH(A)
#define ACE_PTHREAD_CLEANUP_POP(A)
#define ACE_OS_GUARD
#define ACE_TSS_CLEANUP_GUARD
#define ACE_TSS_BASE_GUARD
#define ACE_INLINE   inline

Typedefs

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

Functions

void ACE_OS::cleanup_tss (const u_int main_thread)
int ACE_OS::lwp_getparams (ACE_Sched_Params &sched_params)
int ACE_OS::lwp_setparams (const ACE_Sched_Params &sched_params)
ACE_NAMESPACE_INLINE_FUNCTION
int 
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 schedling 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).
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sigtimedwait (const sigset_t *set, siginfo_t *info, const ACE_Time_Value *timeout)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sigwait (sigset_t *set, int *sig=0)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::sigwaitinfo (const sigset_t *set, siginfo_t *info)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_cancel (ACE_thread_t t_id)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_cmp (ACE_hthread_t t1, ACE_hthread_t t2)
ACE_NAMESPACE_INLINE_FUNCTION
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 *thr_handle, long priority, void *stack, size_t stacksize, ACE_Base_Thread_Adapter *thread_adapter)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_equal (ACE_thread_t t1, ACE_thread_t t2)
void ACE_OS::thr_exit (ACE_THR_FUNC_RETURN status)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_getconcurrency (void)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_getprio (ACE_hthread_t id, int &priority)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_getprio (ACE_hthread_t id, int &priority, int &policy)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_getspecific (ACE_thread_key_t key, void **data)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_join (ACE_hthread_t waiter_id, ACE_THR_FUNC_RETURN *status)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_join (ACE_thread_t waiter_id, ACE_thread_t *thr_id, ACE_THR_FUNC_RETURN *status)
int ACE_OS::thr_key_detach (ACE_thread_key_t key, void *inst)
 NOTE: the "inst" arge is deprecated. It will be ignored.
int ACE_OS::thr_key_used (ACE_thread_key_t key)
int ACE_OS::thr_keycreate (ACE_thread_key_t *key, ACE_THR_DEST, void *inst=0)
 NOTE: the "inst" arge is deprecated. It will be ignored.
int ACE_OS::thr_keyfree (ACE_thread_key_t key)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_kill (ACE_thread_t thr_id, int signum)
ACE_NAMESPACE_INLINE_FUNCTION
size_t 
ACE_OS::thr_min_stack (void)
ACE_NAMESPACE_INLINE_FUNCTION
ACE_thread_t 
ACE_OS::thr_self (void)
ACE_NAMESPACE_INLINE_FUNCTION
void 
ACE_OS::thr_self (ACE_hthread_t &)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_setcancelstate (int new_state, int *old_state)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_setcanceltype (int new_type, int *old_type)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_setconcurrency (int hint)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_setprio (ACE_hthread_t 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)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_sigsetmask (int how, const sigset_t *nsm, sigset_t *osm)
ACE_NAMESPACE_INLINE_FUNCTION
int 
ACE_OS::thr_suspend (ACE_hthread_t target_thread)
ACE_NAMESPACE_INLINE_FUNCTION
void 
ACE_OS::thr_testcancel (void)
ACE_NAMESPACE_INLINE_FUNCTION
void 
ACE_OS::thr_yield (void)
void ACE_OS::unique_name (const void *object, ACE_TCHAR *name, size_t length)

Detailed Description

Id
OS_NS_Thread.h,v 1.1.1.1.2.1 2005/02/22 19:39:49 calabrese_p Exp

Author:
Douglas C. Schmidt <schmidt@cs.wustl.edu>

Jesper S. M|ller<stophph@diku.dk>

and a cast of thousands...

Originally in OS.h.

Define Documentation

#define ACE_DEFAULT_SYNCH_TYPE   USYNC_THREAD
 

#define ACE_EXPORT_MACRO   ACE_Export
 

#define ACE_INLINE   inline
 

#define ACE_KEY_INDEX OBJ,
KEY   )     u_int OBJ = KEY
 

#define ACE_OS_GUARD
 

#define ACE_PTHREAD_CLEANUP_POP  ) 
 

#define ACE_PTHREAD_CLEANUP_PUSH  ) 
 

#define ACE_SCHED_FIFO   1
 

#define ACE_SCHED_OTHER   0
 

#define ACE_SCHED_RR   2
 

#define ACE_SCOPE_LWP   1
 

#define ACE_SCOPE_PROCESS   0
 

#define ACE_SCOPE_THREAD   2
 

#define ACE_SELF   (0)
 

#define ACE_THR_PRI_FIFO_DEF   0
 

#define ACE_THR_PRI_OTHER_DEF   0
 

#define ACE_TSS_BASE_GUARD
 

#define ACE_TSS_CLEANUP_GUARD
 


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 ACE_OS_thread_key_t ACE_thread_key_t
 

typedef DWORD ACE_thread_t
 


Generated on Wed Nov 23 15:47:18 2005 for ACE by  doxygen 1.4.5