Exemplo n.º 1
0
int ldap_pvt_thread_initialize( void )
{
	int rc;
	static int init = 0;
	ldap_pvt_thread_rmutex_t rm;
	ldap_pvt_thread_t tid;

	/* we only get one shot at this */
	if( init++ ) return -1;

	rc = ldap_int_thread_initialize();
	if( rc ) return rc;

#ifndef LDAP_THREAD_HAVE_TPOOL
	rc = ldap_int_thread_pool_startup();
	if( rc ) return rc;
#endif

	/* kludge to pull symbol definitions in */
	ldap_pvt_thread_rmutex_init( &rm );
	tid = ldap_pvt_thread_self();
	ldap_pvt_thread_rmutex_lock( &rm, tid );
	ldap_pvt_thread_rmutex_trylock( &rm, tid );
	ldap_pvt_thread_rmutex_unlock( &rm, tid );
	ldap_pvt_thread_rmutex_unlock( &rm, tid );
	ldap_pvt_thread_rmutex_destroy( &rm );

	return 0;
}
Exemplo n.º 2
0
int ldap_pvt_thread_mutex_recursive_destroy( ldap_pvt_thread_mutex_recursive_t *mutex )
{
	return ldap_pvt_thread_rmutex_destroy( mutex );
}