Unix 环境多线程与互斥量的编程实例
来源:互联网 发布:mac appstore 更新不 编辑:程序博客网 时间:2024/06/16 06:49
#include <stdio.h>
#include <pthread.h>
pthread_t thread[2];
int number = 0;
pthread_mutex_t mut;
void *worker1()
{
int i=0;
printf("I am worker1\n");
for(i=0; i<10; i++)
{
pthread_mutex_lock(&mut);
number++;
pthread_mutex_unlock(&mut);
printf("worker1 number is %d\n", number);
sleep(1);
}
pthread_exit(NULL);
}
void *worker2()
{
int i=0;
printf("I am worker2\n");
for(i=0; i<10; i++)
{
pthread_mutex_lock(&mut);
number++;
pthread_mutex_unlock(&mut);
printf("worker2 number is %d\n", number);
sleep(1);
}
pthread_exit(NULL);
}
int main()
{
/* 初始化互斥量 */
pthread_mutex_init(&mut, NULL);
/* 创建工人1线程 */
pthread_create(&thread[0], NULL, worker1,NULL);
/* 创建工人2线程 */
pthread_create(&thread[1], NULL, worker2,NULL);
/* 等待工人1线程的结束 */
pthread_join(thread[0], NULL);
/* 等待工人1线程的结束 */
pthread_join(thread[1], NULL);
return 0;
}
阅读全文
0 0
- Unix 环境多线程与互斥量的编程实例
- 多线程 一个mutex互斥量实例(unix环境高级编程)
- Unix环境多线程编程(一)
- Unix环境多线程编程(二)
- Unix环境多线程编程(三)
- UNIX网络编程和UNIX环境高级编程的环境搭建和运行实例
- 《Unix环境高级编程》:单实例守护进程的实现
- 《Unix环境高级编程》:单实例守护进程的实现
- 多线程 读写锁 实例--同步操作双向链表(unix环境高级编程)
- Unix环境编程------Unix编程实例------进程组&&会话
- Unix环境多线程编程(一)[转]
- Unix环境多线程编程(二)[转]
- Unix环境多线程编程(三) [转]
- 《UNIX环境高级编程》多线程同步 pthread_cond_t
- Unix环境高级编程--多线程(一)
- UNIX环境高级编程实例运行
- 《Unix环境高级编程》:死锁检测实例
- Unix环境高级编程 实例4-7
- Java——线程——生产者——消费者问题
- 总结--插入排序
- jdk开发webservice例子
- 记录多渠道打包技术方案
- JavaScript 放大镜(商品放大)
- Unix 环境多线程与互斥量的编程实例
- Java子线程中的异常处理
- Java--throw关键字
- 23种设计模式
- js基础知识示例2----表格隔行变色
- 贝叶斯统计:PyMC3 (3.1)
- css中clearfix的用法(清除浮动)
- 河大毕业答辩之旅
- iData入库手册