70,020
社区成员




#include <stdio.h>
#include <unistd.h>
#include <pthread.h>
int flag = 1;
pthread_mutex_t mutex = PTHREAD_MUTEX_INITIALIZER;
void *fun1(void *param)
{
while(flag)
{
pthread_mutex_lock(&mutex);
printf("fun1\n");
pthread_mutex_unlock(&mutex);
usleep(2);
}
}
void *fun2(void *param)
{
while(flag)
{
pthread_mutex_lock(&mutex);
printf("fun2\n");
pthread_mutex_unlock(&mutex);
usleep(2);
}
}
int main()
{
pthread_t t1,t2;
pthread_create(&t1,NULL,fun1,NULL);
pthread_create(&t2,NULL,fun2,NULL);
usleep(20);
flag = 0;
pthread_join(t1,NULL);
pthread_join(t2,NULL);
return 0;
}