ph Гость
|
Добавлено: Ср Апр 21 2004 02:12 Заголовок сообщения: pthread_cancel() |
|
|
hi all!
этот код виснет. Что не так?
#include <stdio.h>
#include <pthread.h>
pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
pthread_t tid1;
void *thread1(void *);
int
main(int argc, char **argv)
{
pthread_create(&tid1, NULL, thread1, NULL);
sleep(1);
printf( "cancelling thread..\n" );
pthread_cancel( tid1 );
printf( "joining thread..\n" );
pthread_join( tid1, NULL );
exit(0);
}
void
onclean( void* arg )
{
printf( "thread: exiting..\n" );
}
void *
thread1(void *arg)
{
pthread_cleanup_push( onclean, NULL );
while ( 1 );
pthread_cleanup_pop( 0 );
return(NULL);
} |
|