Detach papi event set from previously specified thread id and restore to executing thread.
@par C Interface:
\#include <papi.h> @n
int PAPI_detach( int  EventSet, unsigned long  tid );
PAPI_detach is a wrapper function that calls PAPI_set_opt to allow PAPI to
monitor performance counts on a thread other than the one currently executing.
This is sometimes referred to as third party monitoring.
PAPI_attach connects the specified EventSet to the specified thread;
PAPI_detach breaks that connection and restores the EventSet to the
original executing thread.
@param EventSet
    An integer handle for a PAPI EventSet as created by PAPI_create_eventset.
@param tid
    A thread id as obtained from, for example, PAPI_list_threads or PAPI_thread_id.
@retval PAPI_ECMP
    This feature is unsupported on this component.
@retval PAPI_EINVAL
    One or more of the arguments is invalid.
@retval PAPI_ENOEVST
    The event set specified does not exist.
@retval PAPI_EISRUN
    The event set is currently counting events.
@par Examples:
* int EventSet = PAPI_NULL; * unsigned long pid; * pid = fork( ); * if ( pid <= 0 ) * exit( 1 ); * if ( PAPI_create_eventset( &EventSet ) != PAPI_OK ) * exit( 1 ); * // Add Total Instructions Executed to our EventSet * if ( PAPI_add_event( EventSet, PAPI_TOT_INS ) != PAPI_OK ) * exit( 1 ); * // Attach this EventSet to the forked process * if ( PAPI_attach( EventSet, pid ) != PAPI_OK ) * exit( 1 ); *
See Also:
PAPI_set_opt
PAPI_list_threads
PAPI_thread_id
PAPI_thread_init
Generated automatically by Doxygen for PAPI from the source code.