后台线程的调用Thead

简介:

启动线程

List<ActionDevice> temDevice = new ArrayList<ActionDevice>();

ScheduleEexcuteThread SET=new ScheduleEexcuteThread(temDevice);

SET.start();

参数temDevice为需要操作的对象。

参数ActionDevice为实体类

线程ScheduleEexcuteThread需要继承Thread

public class ScheduleEexcuteThread extends Thread{

Logger log = Logger.getLogger(Class.class.getName());

public  List<ActionDevice>  Dealy = new ArrayList<ActionDevice>();

public  List<ActionDevice> tempDealy = new ArrayList<ActionDevice>();

Boolean stop=false

public  ScheduleEexcuteThread(List<ActionDevice> dDealy){

    this.Dealy=dDealy;

}

public void run(){

while(!stop){

for(ActionDevice adevice :Dealy){

//对不符合条件的对象加入临时list

        tempDealy.add(adevice);

   }

        Dealy.clear();

        Dealy.addAll(tempDealy);

       tempDealy.clear();

       if(Dealy.size()==0){

            this.stop=true;

     }else{

            try {

          Thread.sleep();

            catch (InterruptedException e) {

            e.printStackTrace();

            }

      }

    }

}

}

 

定义参数stop,当条件成熟时,设置stop=true;等待下一次线程启动时,会判断stop=true,之后进程结束。


ScheduleEexcuteThread SET=new ScheduleEexcuteThread(temDevice);

SET.start();



      本文转自tianjian_0913 51CTO博客,原文链接:http://blog.51cto.com/tianjian/1665987,如需转载请自行联系原作者




相关文章
|
6月前
|
监控 网络协议 iOS开发
程序退到后台的时候,所有线程被挂起,系统回收所有的socket资源问题及解决方案
程序退到后台的时候,所有线程被挂起,系统回收所有的socket资源问题及解决方案
188 0
|
6月前
|
数据处理
Swing通过后台线程实现页面更新
Swing通过后台线程实现页面更新
75 2
|
安全 Java Android开发
Android 中AsyncTask后台线程,异步任务的理解
Android 中AsyncTask后台线程,异步任务的理解
154 0
|
监控 Java 数据库连接
【JavaSE专栏86】守护线程的那些事,后台默默地守护,是最长情的告白
【JavaSE专栏86】守护线程的那些事,后台默默地守护,是最长情的告白
|
Java 开发者
后台守护线程|学习笔记
快速学习 后台守护线程
113 0
C#线程、前后台线程
C#线程、前后台线程 本文提供全流程,中文翻译。 Chinar 坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 —— 高分辨率用户请根据需求调整网页缩放比例) Chinar —— 心分享、...
971 0