ITPub博客

首页 > 应用开发 > Java > java定时器和多线程实践记录

java定时器和多线程实践记录

原创 Java 作者:造碗 时间:2016-06-22 12:27:22 0 删除 编辑

这几天因为需要测试mongodb读写分离的问题,因此写了个定时查询程序,并且用到了多线程,以达到定时启动多个线程查询数据库的效果,下边代码记录备忘:


[java] view plain copy
 在CODE上查看代码片派生到我的代码片
  1. package timmer;  
  2.   
  3. import java.util.Timer;  
  4. import java.util.TimerTask;  
  5.   
  6. import mongoService.mongoServiceImp.AlarmServiceImpl;  
  7.   
  8. import com.mongodb.DBObject;  
  9.   
  10. public class StartTim {  
  11.   
  12.   // 从这里开始测试定时查询  
  13.   public static void main(String[] args) {  
  14.     Timer timer1 = new Timer();  
  15.     // 在1秒后执行此任务,每次间隔5秒执行一次,  
  16.     timer1.schedule(new MyTask(), 1000, 5000);  
  17.   }  
  18.   
  19.   // java定时器要继承timerTask类  
  20.   static class MyTask extends TimerTask {  
  21.     AlarmServiceImpl alarmService = new AlarmServiceImpl();  
  22.   
  23.     // 调用定时器需要处理的业务  
  24.     public void run() {  
  25.       for (int i = 0; i < 3; i++) {  
  26.         new Thread(new MyThread(alarmService)).start();  
  27.       }  
  28.     }  
  29.   }  
  30.   
  31.   static class MyThread implements Runnable {  
  32.     AlarmServiceImpl alarmService;  
  33.   
  34.     public MyThread(AlarmServiceImpl alarmService) {  
  35.       super();  
  36.       this.alarmService = alarmService;  
  37.     }  
  38.   
  39.     public void run() {  
  40.       System.out.println(Thread.currentThread().getName());  
  41.       test();  
  42.     }  
  43.   
  44.     public void test() {  
  45.       System.out.println("定时器");  
  46.       DBObject list = alarmService.findAlarm();  
  47.       System.out.println(list);  
  48.     }  
  49.   }  
  50. }  

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31364689/viewspace-2120687/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2016-06-21

  • 博文量
    4
  • 访问量
    2431