Java中定时器
2024-08-31 21:54:34
import java.util.Calendar;
import java.util.Date;
import java.util.Timer;
import java.util.TimerTask; public class TimeTest {
public static void main(String[] args) {
timer1();
//timer2();
//timer3();
//timer4();
} // 第一种方法:设定指定任务task在指定时间time执行 schedule(TimerTask task, Date time)
public static void timer1() {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, 2000);// 设定指定的时间time,此处为2000毫秒
} // 第二种方法:设定指定任务task在指定延迟delay后进行固定延迟peroid的执行
// schedule(TimerTask task, long delay, long period)
public static void timer2() {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, 1000, 5000);
} // 第三种方法:设定指定任务task在指定延迟delay后进行固定频率peroid的执行。
// scheduleAtFixedRate(TimerTask task, long delay, long period)
public static void timer3() {
Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, 1000, 2000);
} // 第四种方法:安排指定的任务task在指定的时间firstTime开始进行重复的固定速率period执行.
// Timer.scheduleAtFixedRate(TimerTask task,Date firstTime,long period)
public static void timer4() {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.HOUR_OF_DAY, 12); // 控制时
calendar.set(Calendar.MINUTE, 0); // 控制分
calendar.set(Calendar.SECOND, 0); // 控制秒 Date time = calendar.getTime(); // 得出执行任务的时间,此处为今天的12:00:00 Timer timer = new Timer();
timer.scheduleAtFixedRate(new TimerTask() {
public void run() {
System.out.println("-------设定要指定任务--------");
}
}, time, 1000 * 60 * 60 * 24);// 这里设定将延时每天固定执行
}
}
最新文章
- Storm构建分布式实时处理应用初探
- SqlServer2008 无法修改表,超时时间已到 在操作完成之前超时解决方法
- Mac OS
- 【基础知识】.Net基础加强09天
- svn提交代码的原则
- C++——使用类
- [转]SQLITE3 C语言接口 API 函数简介
- Helpers\Sessions
- 使用CURL出现certificate verify failed错误的解决方法
- 泛型 ";new的性能";
- Servlet的学习之ServletContext(1)
- java_web学习(六) request对象中的get和post差异
- Linux安装Tomcat-Nginx-FastDFS-Redis-Solr-集群——【第五集之补充-使用桥接模式实现虚拟机作为服务器,让同网段的其他主机远程连接】
- 插件 DataTable 创建列表 render参数的详解与如何传递本行数据id
- jQuery two way bindings(双向数据绑定插件)
- 海马玩模拟器——搭建React Native环境
- db2空值、null
- P1438 无聊的数列
- Linux lvm 分区知识笔记
- 使用ViewPager和Fragment实现滑动导航
热门文章
- [RxJS] ReplaySubject with buffer
- 高速在MyEclipse中打开jsp类型的文件
- ios开发swift学习第三天:逻辑分支
- Android多线程研究(5)——线程之间共享数据
- 百度地图坐标之间的距离php
- Windows Phone 8.1 应用间共享
- spring 输出mvc
- 【最小树形图(奇怪的kruskal)】【SCOI 2012】【bzoj 2753】滑雪与时间胶囊
- Distribution download cancelled. Using distribution from 'https://services.gradle.org/distributions/
- Android XMPP服务器, BOSH(Http-Binding)和WEB客户端搭建