Java 定时器(Timer)及线程池里使用定时器实例代码
发布时间:2021-01-11 21:32:46 所属栏目:Java 来源:互联网
导读:javaTimer定时器简单实例代码:publicclassTest{publicstaticvoidmain(String[]args){//Timer定时器
java Timer定时器 简单实例代码: public class Test { public static void main(String[] args) { // Timer定时器 Timer mTimer = new Timer(); MyTack myTack = new MyTack(); mTimer.schedule(myTack,2000,3000);//第一个参数是需要执行的任务 第二个参数是延迟多少时间最开始执行,第三个参数是执行完后多少时间后进行再次执行是一个周期性的 Scanner mScanner = new Scanner(System.in); String exti = ""; while(!exti.equals("1")){ System.out.println("---->>"); exti = mScanner.next(); } System.out.println("关闭"); mTimer.cancel();//关闭这个定时器 mScanner.close(); } static class MyTack extends TimerTask{ @Override public void run() { System.out.println("执行任务"); } } } 线程池里的定时器 public class Test { public static void main(String[] args) { // 定时器 ScheduledExecutorService service = Executors.newScheduledThreadPool(3); service.scheduleWithFixedDelay(new MyRunnable(),10000,TimeUnit.MILLISECONDS);//一个参数是实例化一个runnable的对象,第二个参数是延迟多长时间后执行,第三个参数是执行一次后需要等待多长时间后执行第二次是一个周期性的,第四个参数是按类型算(毫秒,秒,分。。等其他的一些类型). } } //需要写一个实现runnable接口的类 public class MyRunnable implements Runnable { @Override public void run() { int index = 0; while (index++ < 100) { System.out.println(Thread.currentThread().getName()+" "+index); try { Thread.sleep(50); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } } 感谢阅读,希望能帮助到大家,谢谢大家对本站的支持! (编辑:岳阳站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- 为什么选择行/单元格时,我的Java自定义单元格渲染器不会显示
- java – 如何忽略JUnit / easymock中的意外方法调用?
- java – 我应该使用什么类型的数据结构来保存表行?
- 如何使QueryDSL和Lombok协同工作
- java与JSON数据的转换实例详解
- java – SFTP上传使用Apache Commons VFS下载Exist and Mov
- 浅谈Java自定义注解和运行时靠反射获取注解
- java中利用List的subList方法实现对List分页(简单易学)
- 并发 – 使用无锁算法可以解决Clojure lockfree吗?
- 利用反射获取Java类中的静态变量名及变量值的简单实例