c++ break while
#include <iostream>
#include <vector>
#include <pthread.h>
#include "destory_free_while.h"
using namespace std; Worker::Worker() {
shutdown = false;
num_thread = ;
}
void Worker::start() {
tids.resize(num_thread);
for (int i = ; i <num_thread ; ++i) {
if (pthread_create(&tids[i], NULL, sleeping, this) == ) {
cout << "thread start complete" << endl;
}
}
} Worker::~Worker() {
cout << "begin destory instance" << endl;
shutdown = true;
for(unsigned int i=; i<tids.size(); i++) {
pthread_join(tids[i], NULL);
}
} void* Worker::sleeping(void* arg) {
Worker* work = (Worker*)arg;
while(true) {
cout << "." << flush;
sleep();
if(work->shutdown) {
cout << " destory instance , thread quit" << endl;
break;
} }
} /* vim: set ts=4 sw=4 sts=4 tw=100 */
#ifndef DESTORY_FREE_WHILE_H
#define DESTORY_FREE_WHILE_H
#include <vector>
#include <pthread.h>
class Worker {
public:
Worker();
~Worker();
void start();
public:
static void* sleeping(void* arg);
public:
std::vector<pthread_t> tids;
int num_thread;
bool shutdown;
}; #endif // DESTORY_FREE_WHILE_H
#include <iostream>
#include "destory_free_while.h"
using namespace std; int main() {
Worker worker;
worker.start();
sleep();
cout << "program exit" << endl;
}
c++ break while的更多相关文章
- continue break 区别
在循环中有两种循环方式 continue , break continue 只是跳出本次循环, 不在继续往下走, 还是开始下一次循环 break 将会跳出整个循环, 此循环将会被终止 count = ...
- C# 中Switch case 返回不止用break
Switch(temp) { case "A": //跳出循环 break; case "B": //返回值 return var; case "C& ...
- jquery each函数 break和continue功能
jquery each函数 break和continue功能幸运的是另一个突破,持续一个jQuery循环方式.你可以打破在函数返回一个jQuery参数虚假循环.一个可以继续执行只是在做不指定返回值或返 ...
- [LeetCode] Integer Break 整数拆分
Given a positive integer n, break it into the sum of at least two positive integers and maximize the ...
- [LeetCode] Word Break II 拆分词句之二
Given a string s and a dictionary of words dict, add spaces in s to construct a sentence where each ...
- R for循环之break,next
next跳出本次循环 break跳出本层循环(当有多个for 循环时,即跳出最近的一个for循环)
- 关于break语句如何结束多重循环的嵌套
在Java中的break语句功能大体上同c语言, 用于循环语句中,表示结束当前循环. 但是有时候在循环嵌套语句中,仅仅靠一 个break语句想实现是不够的. 例: 如果想使sum在501时就直接输出, ...
- break与continue的区别
break 在while.for.do...while.while循环中使用break语句退出当前循环,直接执行后面的代码. continue 的作用是仅仅跳过本次循环,而整个循环体继 ...
- 高程(3):操作符、for、for...in循环、break/continue/return语句、函数等
1.关系操作符 注意点:1)比较操作数是两个字符串,是比较字符串的字符编码值. 如:"a" > "b" 返回 false:"a" & ...
- case break结构与return的有关要点
//确认事件 private void cmd_ok_Click(object sender, EventArgs e) { //客户名称是否为空 if (txt_banhao.Text.TrimEn ...
随机推荐
- Android常用系统广播
关于Intent的使用,可参阅前章:http://www.cnblogs.com/caidupingblogs/p/5101669.html //关闭或打开飞行模式时的广播 Intent.ACTION ...
- 【转】K3Cloud 二次开发 单据转换系列
Entity, EntryEntity, SubEntryEntity 这三个对象具有继承关系:Entity 是实体基类,用于定义各种实体的公共属性:EntryEntity 是单据体实体类,从Enti ...
- 图解win7中IIS7.0的安装及配置ASP环境
控制面板中“程序”的位置 “程序”中“打开或关闭Windows功能”的位置 如图,安装IIS7时需要选择要使用的功能模块 IIS7安装完成之后可以在开始菜单的所有程序中看到“管理工具”,其中有一个“I ...
- Template_5模板拾遗1
1,typename和class模板参数作为类的时候只能用classtemplate<typename T, template<typename ELEM> class CONT = ...
- 《Linux系统静态路由和火墙路由》
本篇主要写的是关于静态路由表的添加,和如何让你不能上网的主机通过火墙路由表实现上网的功能. 静态路由表: 要是你的主机是2块网卡,并且做了网卡的绑定,依照我下面的方法是成功不了的,你可以去编辑: # ...
- WP开发笔记——去除 HTML 标签
获取到一段HTML类型的信息,显示在WP的webbrowser控件中,如果不加处理的话,会显示出各种神烦的HTML标签. 这时,需要我们将这HTML类型的信息进行处理去除HTML标签后再显示出来,这里 ...
- WCF 服务与终结点(四)
服务 服务是一组公开功能的集合. 服务内部包含了如语言.技术.版本与框架等概念,服务之间的交互只允许使用规定的通信模式 外界客户端并不知道服务内部的实现细节,所以WCF服务通常通过元数据的方式描述可用 ...
- emmet(Zen coding)帮助文档
葵花宝典终可成,半途而废万事空. 官方地址:http://docs.emmet.io/cheat-sheet/ 我导出了pdf版,需要的同学可以下载: 链接:http://pan.baidu.com/ ...
- jQuery对Select操作大集合
介绍了jQuery对Select的操作进行了详细的汇总. 1.jQuery添加/删除Select的Option项: 2.$("#select_id").append("& ...
- Configuration python CGI in XAMPP in win-7
1.After install XAMPP,we need add the path of the Mysql just find the path and add it to your sys-pa ...