lchjczwlchjczw.blog.chinaunix.net
lchjczw
全部博文(1008)
sysfs(0)
procfs(6)
Java(0)
Linux C(1)
C++(0)
C语言(0)
wifi驱动开发(0)
视频驱动开发(0)
音频驱动开发(2)
网络设备驱动开发(1)
驱动调试(0)
驱动基础(4)
sd卡驱动开发(1)
总线驱动(9)
flash驱动开发(0)
USB驱动开发(1)
2012年(1008)
Lanny_li
zsy77
cynthia
Bsolar
浪花小雨
fengchar
yxl15098
wangfeng
CHLRX
728196
Katherin
分类:
2012-08-01 11:35:03
原文地址:线程同步(互斥量) 作者:luozhiyong131
#include <stdio.h>#include <stdlib.h>#include <pthread.h>pthread_mutex_t mutex;int x;void thread1(void){ while(x>0) { pthread_mutex_lock(&mutex); printf("thread 1 is running x=%dn",x); x--; pthread_mutex_unlock(&mutex); sleep(1); } pthread_exit(NULL);}void thread2(void){ while(x>0) { pthread_mutex_lock(&mutex); printf("thread 2 is running x=%dn",x); x--; pthread_mutex_unlock(&mutex); sleep(1); } pthread_exit(NULL);}int main(){ pthread_t id1,id2; int ret; ret = pthread_mutex_init(&mutex,NULL); if(ret!=0) { printf("pthread_mutex_init failedn"); exit(1); } x=10; ret = pthread_create(&id1,NULL,(void *)&thread1,NULL); if(ret!=0) { printf("pthread_create 1 failedn"); exit(1); } ret = pthread_create(&id2,NULL,(void *)&thread2,NULL); if(ret!=0) { printf("pthread_create 2 failedn"); exit(1); } pthread_join(id1,NULL); pthread_join(id2,NULL); return 0;}
上一篇:线程退出保护设计
下一篇:线程属性(线程分离)
登录 注册