码迷,mamicode.com
首页 > 其他好文 > 详细

violate关键字

时间:2015-06-14 00:41:42      阅读:358      评论:0      收藏:0      [点我收藏+]

标签:violate关键字   开发   项目   java   

最近在项目中线程开发遇到一个问题,需求是主线程执行完后执行子线程,实际测试的时候主线程走完,并没有执行子线程。代码如下:

ThreadErrorCMeter threadErrorCMeter = new ThreadErrorCMeter(sqlDao, sessionFactory, pageNo, pageSize);

Thread errorCMeterThread = new Thread(threadErrorCMeter);

errorCMeterThread.start();


while (true) {


if (threadErrorCMeter.isFlag()) {

errorCMeterThread.stop();// 关闭主线程


ThreadCMeter threadCMeter = new ThreadCMeter(sqlDao, sessionFactory, pageNo, pageSize);

Thread cMeterThread = new Thread(threadCMeter);

cMeterThread.start();


ThreadCCons threadCCons = new ThreadCCons(sqlDao, sessionFactory, pageNo, pageSize);

Thread cConsThread = new Thread(threadCCons);

cConsThread.start();


ThreadErrorDLcEquip threadErrorDLcEquip = new ThreadErrorDLcEquip(sqlDao, sessionFactory, pageNo, pageSize);

Thread errorDLcEquipThread = new Thread(threadErrorDLcEquip);

errorDLcEquipThread.start();



后来经过同事查询资料,给flag加上violate关键字修饰后,线程之间数据得到同步,线程正常运行。具体原因不是太理解,望大神给予详细解答。




violate关键字

标签:violate关键字   开发   项目   java   

原文地址:http://qihan.blog.51cto.com/4246095/1661622

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!