Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
THR_EXIT(2)		       System Calls Manual		     THR_EXIT(2)

NAME
     thr_exit -- terminate current thread

LIBRARY
     Standard C Library (libc, -lc)

SYNOPSIS
     #include <sys/thr.h>

     void
     thr_exit(long *state);

DESCRIPTION
     This  function is intended for implementing threading.  Normal applications
     should call pthread_exit(3) instead.

     The thr_exit() system call terminates the current kernel-scheduled thread.

     If the state argument is not NULL, the location pointed to by the	argument
     is   updated   with   an  arbitrary  non-zero  value,  and  an  _umtx_op(2)
     UMTX_OP_WAKE operation is consequently performed on the location.

     Attempts to terminate the last thread in the process are silently	ignored.
     Use _exit(2) syscall to terminate the process.

RETURN VALUES
     The function does not return a value.  A return from the function indicates
     that the calling thread was the last one in the process.

SEE ALSO
     _exit(2),	_umtx_op(2), thr_kill(2), thr_kill2(2), thr_new(2), thr_self(2),
     thr_set_name(2), pthread_exit(3)

STANDARDS
     The thr_exit() system call is non-standard and is used by 1:1 Threading Li-
     brary  (libthr,  -lthr)  to  implement  IEEE  Std	1003.1-2001  ("POSIX.1")
     pthread(3) functionality.

HISTORY
     The thr_exit() system call first appeared in FreeBSD 5.2.

FreeBSD ports 15.quarterly	   May 5, 2020			     THR_EXIT(2)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=thr_exit&sektion=2&manpath=FreeBSD+15.1-RELEASE+and+Ports.quarterly>

home | help