「java延时提交」java实现延时
今天给各位分享java延时提交的知识,其中也会对java实现延时进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!
本文目录一览:
- 1、JAVA中 如何使用延迟?
- 2、java控制台输入数据后,能延时自动执行
- 3、java怎么做到在一个方法里面执行前面一部分代码,并返回值,然后再延时几分钟执行后面一部分代码?
- 4、Java语句延时
- 5、怎样让“java”延迟函数?
- 6、java定时提交数据
JAVA中 如何使用延迟?
Java中主要有两种方法来实现延迟,即:Thread和Timer\x0d\x0a\x0d\x0a1、普通延时用Thread.sleep(int)方法,这很简单。它将当前线程挂起指定的毫秒数。如\x0d\x0atry \x0d\x0a{ \x0d\x0aThread.currentThread().sleep(1000);//毫秒 \x0d\x0a} \x0d\x0acatch(Exception e){} \x0d\x0a在这里需要解释一下线程沉睡的时间。sleep()方法并不能够让程序"严格"的沉睡指定的时间。例如当使用5000作为sleep()方法的参数时,线 程可能在实际被挂起5000.001毫秒后才会继续运行。当然,对于一般的应用程序来说,sleep()方法对时间控制的精度足够了。\x0d\x0a\x0d\x0a2、但是如果要使用精确延时,最好使用Timer类:\x0d\x0aTimer timer=new Timer();//实例化Timer类 \x0d\x0atimer.schedule(new TimerTask(){ \x0d\x0apublic void run(){ \x0d\x0aSystem.out.println("退出"); \x0d\x0athis.cancel();}},500);//五百毫秒 \x0d\x0a这种延时比sleep精确。上述延时方法只运行一次,如果需要运行多次, 使用timer.schedule(new MyTask(), 1000, 2000); 则每间隔2秒执行MyTask()
java控制台输入数据后,能延时自动执行
有好几种方法可以去实现,随便说两种思路
第一种:每次控制台的Scanner方法收到一个字符时,都启动一个3秒的定时器,并把上一个定时器取消
第二种:分两个线程,一个接收输入字符并记录接收时间,一个每1秒循环一判断一次已收到的字符时间并处理
java怎么做到在一个方法里面执行前面一部分代码,并返回值,然后再延时几分钟执行后面一部分代码?
我的思路是完成审批操作后把时间存入数据库中,审批修改操作:读取数据库的时间判断是否能修改(就是时间值是否是10分钟之内。)
Java语句延时
下面这个是我以前回答别的人的问题,现在刚好可以回答你的这个,我就拷过来了,给你参考一下吧
java.util.Timer
用这下面的TimeTask类(指定延时)
java里面的sleep()并不能精确定时,TimeTask可以:例下面的小程序:
import java.util.*;
public class test{
public static void main (String []args){
Timer timer=new Timer();//实例化Timer类
timer.schedule(new TimerTask(){
public void run(){
System.out.println("退出");
this.cancel();}},5000);//这里百毫秒
System.out.println("本程序存在5秒后自动退出");
}
}
怎样让“java”延迟函数?
Java中主要有以下方法来实现延迟
普通延时用Thread.sleep(int)方法,这很简单。它将当前线程挂起指定的毫秒数。如
try
{
Thread.currentThread().sleep(1000);//毫秒
}
catch(Exception e){}
在这里需要解释一下线程沉睡的时间。sleep()方法并不能够让程序"严格"的沉睡指定的时间。例如当使用5000作为sleep()方法的参数时,线 程可能在实际被挂起5000.001毫秒后才会继续运行。当然,对于一般的应用程序来说,sleep()方法对时间控制的精度足够了。
Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。Java语言作为静态面向对象编程语言的代表,极好地实现了面向对象理论,允许程序员以优雅的思维方式进行复杂的编程。
java定时提交数据
import java.util.Calendar;
import java.util.Timer;
import java.util.TimerTask;
/**
* @author liushy
*
*/
public class UpdaterDatabase extends TimerTask {
private Timer timer = null;
private long period = 24 * 60 * 60 * 1000;// 一天
public UpdaterDatabase() {
timer = new Timer();
}
public void updateDatabase() {
// TODO 更新数据库
System.out.println(" updateDatabase ");
}
public void start() {
Calendar firstTime = Calendar.getInstance();
firstTime.set(Calendar.HOUR, 0);
firstTime.set(Calendar.MINUTE, 0);
firstTime.set(Calendar.SECOND, 0);
firstTime.set(Calendar.MILLISECOND, 0);
timer.schedule(this, firstTime.getTime(), period); //比当前时间靠前,会先调度一次
}
public void stop() {
timer.cancel();
}
@Override
public void run() {
updateDatabase();
}
public static void main(String[] args) {
UpdaterDatabase t = new UpdaterDatabase();
t.start();
}
}
java延时提交的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java实现延时、java延时提交的信息别忘了在本站进行查找喔。