FreeBSD manual

download PDF document: pthread_switch_add_np.3.pdf

PTHREAD_SWITCH_ADD_NP(3) FreeBSD Library Functions Manual
NAME pthread_switch_add_np, pthread_switch_delete_np - thread context switches debugging primitives
LIBRARY POSIX Threads Library (libpthread, -lpthread)
SYNOPSIS #include <pthread_np.h>
int pthread_switch_add_np(pthread_switch_routine_t routine);
int pthread_switch_delete_np(pthread_switch_routine_t routine);
DESCRIPTION An application is allowed to monitor the thread context switches inside the threading library. An application can install a routine that gets called every time a thread (explicitly created by an application with the pthread_create(3) function) gets the context switched. The routine is passed the thread IDs of the threads that are being switched in and out. Installation and removal of these hooks may be done using the pthread_switch_add_np() and pthread_switch_delete_np() functions respectively.
RETURN VALUES If successful, these functions return 0. Otherwise, an error number is returned to indicate the error.
ERRORS The pthread_switch_add_np() may fail if:
[EINVAL] NULL pointer was passed in the routine argument.
The pthread_switch_delete_np() may fail if:
[EINVAL] The routine argument is different from the argument previously passed to the pthread_switch_add_np() function.
SEE ALSO pthread_create(3), pthread_np(3)
AUTHORS This manual page was written by Alexey Zelkin <phantom@FreeBSD.org>.
FreeBSD 14.0-RELEASE-p11 October 12, 2021 FreeBSD 14.0-RELEASE-p11