pthread_mutex_sample.c

来自「linux下的多线程的创建及信号同步」· C语言 代码 · 共 45 行

C
45
字号
#include <pthread.h>#include <sys/types.h>#include <stdio.h>#include <unistd.h>#include <semaphore.h>int number;pthread_mutex_t  mutex_id;void* thread_fun(void *arg){	int i=0;	printf("count=%d\n",*((int*)arg));	pthread_mutex_lock(&mutex_id);	for(i=0;i<5;i++)	{		number++;		printf("number=%d\n",number);		sleep(1);	}	pthread_mutex_unlock(&mutex_id);}int main(int argc,char *argv[]){	int i=0;	int count=99;	pthread_mutex_init(&mutex_id,NULL);	pthread_t thread_id,thread2_id;	pthread_create(&thread_id,NULL,thread_fun,&count);	sleep(1);	pthread_mutex_lock(&mutex_id);	for(i=0;i<5;i++)	{		number--;		printf("number=%d\n",number);		sleep(1);	}	pthread_mutex_unlock(&mutex_id);	printf("main,,,\n");	pthread_mutex_destroy(&mutex_id);	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?