PTHREAD_SWITCH_ADD_NP(3)

NAME
pthread_switch_add_np, pthread_switch_delete_np - thread context switches debugging primitives

LIBRARY
libpthread

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)

AUTHORS
This manual page was written by Alexey Zelkin <phantom@FreeBSD.org>.