Java多线程定时器(Timer)
1 package com.cn.donleo.thread.timer; 2 3 import java.util.Timer; 4 import java.util.TimerTask; 5 import java.util.concurrent.ScheduledExecutorService; 6 7 /** 8 * @author liangd 9 * date 2020-11-02 11:10 10 * code 定时器测试类 11 */ 12 public class TestTimer { 13 public static void main(String[] args) { 14 myTimer(); 15 } 16 17 private static void myTimer() { 18 //将a改为引用对象,在run方法改变其值 19 final int[] a = {0}; 20 //可以换用ScheduledExecutorService代替Timer 21 //多线程并行处理定时任务时,Timer运行多 个TimeTask时,只要其中之一没有捕获抛出的异常, 22 //其它任务便会自动终止运行,使用ScheduledExecutorService则没有这个问题。 23 Timer timer = new Timer() { 24 }; 25 timer.schedule(new TimerTask() { 26 @Override 27 public void run() { 28 System.out.println(a[0]++); 29 if (a[0] == 6) { 30 System.out.println("定时器取消"); 31 timer.cancel(); 32 } 33 } 34 //延时4s,间隔2s再执行一次 35 }, 4000, 2000); 36 } 37 }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix