父线程用标志变量控制子线程的范例
2015-05-28 23:35
316 查看
在实际开发中, 我们会碰到太多需要开线程的例子, 通常会让子线程异步地处理一些信息。 一旦某些情况发生后, 我们需要在父线程中让子线程终止, 那则么办呢? 一个自然而言的想法是用标志变量控制
通用范例如下:
[taoge@localhost learn_c]$ gcc test.c -lpthread
[taoge@localhost learn_c]$ ./a.out
hello
hello
hello
hello
[taoge@localhost learn_c]$
好了, 其实很简单, 也很常见很常用, 本文仅仅小小记录一下。
通用范例如下:
#include <stdio.h> #include <pthread.h> #define YES 0 #define NO -1 int exitFlag = NO; void *threadFun(void *p) { while(NO == exitFlag) { printf("hello\n"); sleep(1); } } int main() { pthread_t id; pthread_create(&id, NULL, threadFun, NULL); getchar(); exitFlag = YES; return 0; }结果如下: (在执行过程中, 我按了Enter键, 改变exitFlag的值, 从而使得子线程退出)
[taoge@localhost learn_c]$ gcc test.c -lpthread
[taoge@localhost learn_c]$ ./a.out
hello
hello
hello
hello
[taoge@localhost learn_c]$
好了, 其实很简单, 也很常见很常用, 本文仅仅小小记录一下。
相关文章推荐
- 码农提高工作效率
- 转载申明
- 《编程珠玑》第二部分总结
- Delphi 读取 c# webservice XML的base64编码图片字符串转化图片并显示
- 自己U盘插自己电脑显示不了,插别人电脑有用,自己电脑插别的U盘有用的解决方法
- java4Android(5)分支语句-if...else...判断语句
- appcan学习心得 第一天
- 团队项目第二阶段冲刺第十天
- Cacti 不出图,后台提示数据库inter 表时出错。
- 黑马程序员-C语言数组与指针学习心得
- 设计模式(主要java)
- 冲刺第二天
- android选择图片或拍照图片上传到服务器(包括上传参数)
- 查找——相邻元素差的绝对值都是1的数组当中的某个数,百度笔试题
- 线索二叉树的实现
- C++:STL标准入门汇总
- 补发《超级迷宫》站立会议三
- 《Spring2之站立会议2》
- PHP实现4种排序算法
- Mac 使用SSH远程登录