⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 p12.4.c

📁 linux编程源代码,其中是由大量的实例
💻 C
字号:
#include <pthread.h>#include <stdlib.h>#include <unistd.h>#include <stdio.h>int g_var;//initialize the mutexpthread_mutex_t locker=PTHREAD_MUTEX_INITIALIZER;void *thread_function(void) {      	int i,j;  	for (i=0;i<4;i++) {		pthread_mutex_lock(&locker);				j=g_var;		j=j+1;		printf("---in thread...increase one---\n");		fflush(stdout);		sleep(1);		g_var=j;				pthread_mutex_unlock(&locker);	}  	return NULL;}int main(void) {	pthread_t thread_id;	int i;  	if (pthread_create(&thread_id,NULL,thread_function,NULL)) {		perror("cannot create new thread");		return 1;	}  	for (i=0;i<4;i++){		pthread_mutex_lock(&locker);				g_var=g_var+1;				pthread_mutex_unlock(&locker);    		printf("...in main thread...increase one...\n");		fflush(stdout);    		sleep(1);	}  	if (pthread_join (thread_id,NULL)){		perror("cannot join thread.");		return 1;	}  	printf("g_var: %d\n",g_var);  	exit(0);}

⌨️ 快捷键说明

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