线程真的挺不错的,但是多了的时候也有点让人头痛
2014-10-20 16:11
155 查看
写了个批量验证代理IP的小功能,顺便把它封装成了一个类。
里面由一条管理者 C++ 线程,调动一个 线程池 的工作者线程。
几条线程间同步并不难,但是多起来,三十来条线程,四十条线程之间就难免有跑飞的情况了。
我也不知道为什么,每条工作者线城,我都留了那么多那么多的出口,而且没有死循环。
每存一个全局变量,我都会用一下临界区,而且为了保证管理者线程正常退出,我加了两个紧急强制退出信号,但是工作者线程似乎加了也没啥用,而且工作者线程存在于线程池中,不可以强制终止。。。。麻烦。。。哎。
不过挺好玩的,我喜欢这么玩。
这是批量多线程验证代理的时候的切图,虽然这页还有将近1/3不完善,但是。。。我写给自己用的,差不多就行了。
前一阵子写的系统托盘类用上了,哈哈,感觉还行,挺方便
![](http://img.bimg.126.net/photo/na7Bc0ORaRM3ulUcv2TRDw==/4004263018702851961.jpg)
![](http://img.bimg.126.net/photo/cGY6rB1EAjbIJphdBhzG8w==/4001166793959033761.jpg)
![](http://img.bimg.126.net/photo/F3dGvq2JNMluFsM7DkJmxg==/2555229838596374075.jpg)
![](http://img.bimg.126.net/photo/IJ3mf_a_wXWuGLEXabgupQ==/5782340447367062052.jpg)
![](http://img.bimg.126.net/photo/4zPN-Sza1-RUxKYJ-zlkjA==/4004263018702851963.jpg)
里面由一条管理者 C++ 线程,调动一个 线程池 的工作者线程。
几条线程间同步并不难,但是多起来,三十来条线程,四十条线程之间就难免有跑飞的情况了。
我也不知道为什么,每条工作者线城,我都留了那么多那么多的出口,而且没有死循环。
每存一个全局变量,我都会用一下临界区,而且为了保证管理者线程正常退出,我加了两个紧急强制退出信号,但是工作者线程似乎加了也没啥用,而且工作者线程存在于线程池中,不可以强制终止。。。。麻烦。。。哎。
不过挺好玩的,我喜欢这么玩。
这是批量多线程验证代理的时候的切图,虽然这页还有将近1/3不完善,但是。。。我写给自己用的,差不多就行了。
前一阵子写的系统托盘类用上了,哈哈,感觉还行,挺方便
![](http://img.bimg.126.net/photo/na7Bc0ORaRM3ulUcv2TRDw==/4004263018702851961.jpg)
![](http://img.bimg.126.net/photo/cGY6rB1EAjbIJphdBhzG8w==/4001166793959033761.jpg)
![](http://img.bimg.126.net/photo/F3dGvq2JNMluFsM7DkJmxg==/2555229838596374075.jpg)
![](http://img.bimg.126.net/photo/IJ3mf_a_wXWuGLEXabgupQ==/5782340447367062052.jpg)
![](http://img.bimg.126.net/photo/4zPN-Sza1-RUxKYJ-zlkjA==/4004263018702851963.jpg)
![](http://img.bimg.126.net/photo/ucva_-N5qhybladh0moU8w==/5124814900987976139.jpg)
相关文章推荐
- 使用NSThread创建线程,执行NSTask,但是异步读取pipe的时候出错
- 设置div的overflow:scroll,但是在手机上滑动的时候有点卡顿
- MFC debug的时候可以用代码关闭线程 但是编译出来直接执行不可以
- xutils中返回的数据在回调方法onSuccess中写了文件存储,但是在主线程调用的时候拿不到文件内容
- MFC 线程创建在使用构造函数进行初始化线程的时候,创建线程实例了,但是线程并没有执行的问题
- 在项目中用到datatables比较多,但是当datatables加载超过1000多的时候就会出现有点缓慢的的样子,这个时候如果继续增加数据量让datatables去处理,那会是一个让人抓狂的事情,幸
- 如何在调用线程的时候传递参数
- Eclipse启动的时候,需要jre,因此只要将jre放在eclipse.exe即eclipse.ini目录下,即可,但是,文件夹名称一定要是jre,不能重命名
- 4星|《经验的疆界》:奇书,企业如何从经验中学习的相关论文综述,虽然有点旧但是非常有新意
- delphi 升级了控件,但build的时候,总是说版本不对,但是文件版本都是对的
- mac usb 实效,但是重启的时候插手机,手机会显示一下充电。
- 程序员平时都是木讷的,但是谈到计算机或者程序的时候简直就是天才—兼借题发挥,谈谈语言及工具的选择
- [引用]SharePoint:在计算字段中使用Today, Me之类的函数的方法,有点搞笑,但是有效
- java 语法没有错,但是无法加载进去,一开始没有错的时候就要查看自己的一些String或者有引号“”的代码
- jboss单独启动没问题,但是和MyEclipse整合以后,启动的时候报了很多异常和错误!
- 换了电脑了,之前电脑上安装svn和git的时候,图标是都可以正常显示的,但是这次出了问题,废了好多时间才解决了,所以想记录一下解决
- 遇到奇葩的现象,给input的id为10的value属性赋值为6,但是怎么显示的时候值还是原先的9的
- QT 子窗口监听主窗口信号(超级简单,但是好用,比如主窗口移动的时候,子窗口不要再继续处理任务)
- 曾经觉得当IT代码工人觉得很没前途,但是到了求别人的时候真的感觉到当个代码工人还是蛮有前途的
- 如何在调用线程的时候传递参数