Home | History | Annotate | Download | only in pthread_exit
      1 <assertions>
      2   <assertion id="1" tag="ref:XSH6:33023:33024">
      3    The function
      4 
      5    void pthread_exit(void *value_ptr);
      6 
      7   terminates the calling thread and makes the value 'value_ptr' available
      8   to any successful join with the terminating thread.
      9   </assertion>
     10   <assertion id="2" tag="ref:XSH6:33024:33026">
     11   Any cancelation cleanup handlers that have been pushed and not yet popped
     12   shall be popped and executed in the reverse order that they were pushed.
     13   </assertion>
     14   <assertion id="3" tag="ref:XSH6:33026:33028">
     15   After all cancelation cleanup handlers have been executed, if the thread
     16   has any thread-specific data, appriopriate destructor functions shall
     17   be called in an unspecified order.
     18   </assertion>
     19   <assertion id="4" tag="ref:XSH6:33028:33030">
     20   Thread termination does not release any application visible process
     21   resources include, but not limited to, mutexes and file descriptors, nor
     22   does it perform any process-level cleanup actions, including but not
     23   limited to, calling any atexit() routines that may exist.
     24   </assertion>
     25   <assertion id="5" tag="ref:XSH6:33031:33033">
     26   An implicit call to pthread_exit() is made when a thread other than the
     27   thread in which main() was first invoked returns from the start routine that
     28   was used to create it.  The function's return value shall serve as the
     29   thread's exit status.
     30   </assertion>
     31   <assertion id="6" tag="ref:XSH6:33040:33042">
     32   The process shall exit with an exit status of 0 after the last thread has
     33   been terminated.  The behavior shall be as if the implemenation called exit()
     34   with a zero argument at thread termination time.
     35 
     36   The pthread_exit() function cannot return to its called.
     37   </assertion>
     38 </assertions>
     39