*nix Documentation Project
·  Home
 +   man pages
·  Linux HOWTOs
·  FreeBSD Tips
·  *niX Forums

  man pages->Tru64 Unix man pages -> tis (3)              
Title
Content
Arch
Section
 

tis(3)

Contents


NAME    [Toc]    [Back]

       tis,  tis_intro  - Introduction to Thread-Independent Services
 (tis)

DESCRIPTION    [Toc]    [Back]

       Thread-independent services (tis) routines compose an  HPproprietary
   interface  to  the  DECthreads  multitasking
       library.  The tis interface provides services that  assist
       with the development of thread-safe libraries.

       Thread  synchronization  can  involve significant run-time
       cost, which is undesirable in a  nonthreaded  environment.
       In  the nonthreaded environment, the tis interface enables
       you to build thread-safe libraries that are efficient, yet
       provide  the  necessary synchronization when called from a
       threaded environment.

       When threads are not active within the process,  tis  routines
  execute only the minimum steps necessary: code running
 in a nonthreaded environment is not burdened  by  the
       run-time  synchronization  that is necessary when the same
       code is run in a threaded environment.  When  threads  are
       active,  tis  routines  provide  the necessary thread-safe
       synchronization.

       The tis objects created using  this  interface  are  fully
       interchangeable  with  DECthreads Pthreads (POSIX 1003.1c)
       objects. So, a mutex can be created by using  static  initialization
   (or  using  tis_mutex_init(3))  and  can  be
       locked, the DECthreads core library (libpthread.so) subsequently
  activated,  and the mutex unlocked.  Keys created
       by tis_key_create(3) are valid when  a  threaded  run-time
       environment is loaded.

       Note  that errno is NOT used by the tis routines. To indicate
 errors, the tis routines return integer values  indicating
 the type of error.

       In  a  nonthreaded environment, condition variables should
       not  be  used  to  guard  operations  (for  example,  with
       tis_cond_wait(3)).  In  a threaded environment, the guidelines
 for using the DECthreads Pthread routines also  pertain
 to the use of the corresponding tis routine.

       The  tis  routines  can  be  classified into the following
       associated groups: General  routines  Thread  cancellation
       routines  Thread-specific data key routines Mutex routines
       Condition variable routines Read-write lock routines

   General Routines    [Toc]    [Back]
       Obtains a value representing a  desired  expiration  time.
       Calls  a  one-time initialization routine that can be executed.
  Obtains the identifier of the calling thread.

   Thread Cancellation Routines    [Toc]    [Back]
       Changes the calling thread's cancelability state.  Creates
       a cancellation point in the calling thread.






   Thread-Specific Data Key Routines    [Toc]    [Back]
       Obtains the data associated with the specified thread-specific
 data key.  Generates a unique  thread-specific  data
       key.   Deletes a thread-specific data key.  Sets the value
       associated with the specified thread-specific key.

   Mutex Routines    [Toc]    [Back]
       Locks the DECthreads global mutex.  Destroys the specified
       tis  mutex object.  Initializes a tis mutex object.  Locks
       the specified tis mutex if not already locked.   Tries  to
       lock  the  specified tis mutex.  Unlocks the specified tis
       mutex.  Unlocks the DECthreads global mutex.

   Condition Variable Routines    [Toc]    [Back]
       Wakes all threads waiting on the specified condition variable.
   Destroys  the specified condition variable object.
       Initializes a condition variable object.  Wakes  at  least
       one  thread  that  is  waiting  on the specified condition
       variable.  Causes the calling thread to wait for the specified
 condition variable to be signaled or broadcast, such
       that it will awake  after  a  specified  period  of  time.
       Causes the calling thread to wait for the specified condition
 variable to be signaled or broadcast.

   Read-Write Lock Routines    [Toc]    [Back]
       Acquires the specified read-write lock  for  read  access.
       Attempts to acquire the specified read-write lock for read
       access; returns immediately if  already  locked.   Unlocks
       the  specified  read-write  lock already acquired for read
       access.  Destroys the specified  read-write  lock  object.
       Initializes a read-write lock object.  Acquires the specified
  read-write  lock  for  write  access.   Attempts  to
       acquire  the  specified  read-write lock for write access;
       returns immediately if already locked.  Unlocks the specified
 read-write lock already acquired for write access.



                                                           tis(3)
[ Back ]
 Similar pages
Name OS Title
eisa OpenBSD introduction to EISA bus machine-independent drivers and support
pthreads IRIX introduction to POSIX thread characteristics
pthread_setspecific Tru64 Sets the thread-specific data value associated with the specified key for the current thread
pthread_join Tru64 Causes the calling thread to wait for the termination of the specified thread
pthread_cancel Tru64 Allows a thread to request a thread to terminate execution
getservent Tru64 Get a services file entry from the /etc/services file.
getservent_r Tru64 Get a services file entry from the /etc/services file.
pthread_getname_np Tru64 Obtain the object name from the thread object of an existing thread
nfssvc OpenBSD NFS services
nfssvc FreeBSD NFS services
Copyright © 2004-2005 DeniX Solutions SRL
newsletter delivery service