导航:首页 > 编程语言 > java在指定时间执行

java在指定时间执行

发布时间:2022-11-07 05:15:24

java怎么根据用户设定的时间执行定时任务

// 一天的毫秒数
long daySpan = 24 * 60 * 60 * 1000;

// 规定的每天时间15:33:30运行
final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd '15:33:30'");
// 首次运行时间
Date startTime = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").parse(sdf.format(new Date()));

// 如果今天的已经过了 首次运行时间就改为明天
if(System.currentTimeMillis() > startTime.getTime())
startTime = new Date(startTime.getTime() + daySpan);

Timer t = new Timer();

TimerTask task = new TimerTask(){
@Override
public void run() {
// 要执行的代码
System.err.println("xxxxxxxxx");
}
};

// 以每24小时执行一次
t.scheleAtFixedRate(task, startTime, daySpan);

❷ java怎么在经过指定时间再执行方法

Java中的Timer类可以实现经过指定时间再执行方法,Timer方法如下:

schele(TimerTasktask,Datetime)//安排在指定的时间执行指定的任务。
schele(TimerTasktask,longdelay)//安排在指定延迟后执行指定的任务。

Java是一种可以撰写跨平台应用程序的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

❸ JAVA中如何实现定时(是在某个特定的时间,如每天的14:00)运行某断代码

这个可以稍微转换一下思路,只要获取一下目标时间,再减去当前时间,获取间隔T
然后再调用 Timer中的schele 隔T时间运行,一切搞定。

❹ java程序中,如何控制每次循环在指定的时间间隔内执行

表示没看懂问题,如果想在某一个时间点执行可以用timer时间控制器,如果想控制循环可以用break、continue、return,他们分别表示: 退出循环、退出本次循环继续执行下一个、退出方法

❺ java怎么指定某段代码在固定时间点前执行

packagethread.timer;

importjava.util.Calendar;
importjava.util.Timer;
importjava.util.TimerTask;

publicclassTimerTest{

publicstaticvoidmain(String[]args){
Timert=newTimer();
TimerTasktask=newTimerTask(){
@Override
publicvoidrun(){
System.out.println("Taskisprocessing.");//此处可以插入自己想运行的代码片段
}
};
Calendarc=Calendar.getInstance();
c.set(Calendar.MINUTE,26);//时间可以自己设置
t.schele(task,c.getTime());
}
}

❻ java 有什么方法让指定的任务在每天指定的时间段内反复执行吗

让程序一直执行,但是在执行任务的时候通过时间段来控制。比如任务是在晚上1点来执行,那程序上就判断一下当当前的时间大于设定的时间就执行该任务,如果不是则直接退出

❼ java 如何设定时间执行程序

用Timer可以实现~~
Timer的schele方法可以指定第一次运行的时刻,和重复间隔
具体可以参考API
timer.schele(task, firstTime, period)
指定firstTime为21:00:00,period为一天的毫秒数24*3600*1000就成了。。

或者可以自己写个线程,放个while循环,每分钟检查一次,如果到时间了就执行任务,如果没到就sleep一分钟。。当然,这种方法比较土。。

更复杂点的可以借助现有的包,比如quartz,有兴趣可以研究下~~

❽ java 有什么方法让指定的任务在每天指定的时间段内反复执行吗

package thread;

import java.util.*;
import org.apache.log4j.Logger;

public class Thread_timing extends Thread{
static Logger logger = Logger.getLogger(Thread_timing.class);
// 构造函数为私有类型,只能在函数内部定义
private Thread_timing() {

}
// 用单一模式,只能创建一个对象
private static Thread_timing Thread_timing = new Thread_timing();
// 定义一个静态对象,用来取类的唯一对象,
public static Thread_timing getThread_timing() {
// 获取线程的状态
String state = Thread_timing.getState().toString();
System.out.println("定时线程状态:"+state);
if (state.equals("NEW") || state.equals("TERMINATED")) {
Thread_timing = new Thread_timing();
}
return Thread_timing;
}
UpdateCityUsering ucu = new UpdateCityUsering();
UpdateUserAddressing uua = new UpdateUserAddressing();
XiaFaTiming xft = new XiaFaTiming();
liShiHuiZong ls = new liShiHuiZong();
public void run(){
System.out.println("定时线程已启动");
while(true){
Calendar date = Calendar.getInstance();

int hour = date.get(Calendar.HOUR_OF_DAY);
//当到达8点
while(hour ==8){
//添加业务逻辑

//等待1小时
try {

Thread.sleep(3600);
} catch (InterruptedException e) {
e.printStackTrace();
}
break;
}
try {
Thread.sleep(60000);//每隔一分钟检测一次,看看时间到了没
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
public static void main(String []arg){
Thread_timing thr=new Thread_timing();
thr.start();
}
}

❾ java中怎么判断定时器的任务在指定的时间内已经执行完成

一般都是通过日志打印
譬如run方法里面加入以下

log.info("定时器启动,时间:"+new Date())
try{

}catch(){
log.error("出现异常")

return;

}
log.info("定时器结束,时间:"+new Date())
当日志打印有结束语句就证明跑完了

❿ Java 怎么在指定的时间内执行某一任务

可以通过死循环的方式来进行实现:第一步就是获取到当前的时间,之后和需要执行的时间进行比较,找出时间差,先让线程停止,之后到时见开始执行死循环,执行完成之后再设置线程等待时间,之后重复执行即可,代码举例如下:
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String str = sdf.format(date);
//此处实现更改为其余的时间
Thread.sleep(睡觉的时间);
for(;;){
//执行某一个方法

//此处实现更改为其余的时间
Thread.sleep(睡觉的时间);
}
备注:上面的部分代码已经有说明,直接根据说明实现即可。这个只是一种简单的实现思路,通常复杂的都需要quazter来实现。

阅读全文

与java在指定时间执行相关的资料

热点内容
压缩泡沫鞋底底材 浏览:217
程序员职场第一课2正确的沟通 浏览:677
遇到不合法app应该怎么办 浏览:90
汇编程序编译后的文件 浏览:77
大智慧均线源码 浏览:371
单片机排阻的作用 浏览:213
滴滴金融app被下架如何还款 浏览:210
jpg转换成pdf免费软件 浏览:741
范里安pdf 浏览:443
伪造pdf 浏览:75
能删除android文件夹吗 浏览:446
LINUX使用V2ray 浏览:797
找人帮忙注册app推广是什么 浏览:820
独立服务器如何恢复初始化 浏览:11
优秀到不能被忽视pdf 浏览:316
导游程序员家政 浏览:586
22乘28的快速算法 浏览:338
软通动力程序员节2021 浏览:845
安卓系统如何卸载安装包 浏览:870
短信删除助手文件夹 浏览:688