ZKX's LAB

java 定时器循环跑 大神 java有没有定时器之类的东西 循环重复调用一个方法,而且可以传参的 有合理答案给50元 决不食言

2021-04-09知识9

java Timer定时器停止的问题 为每个TimerTask创建不同的Timer对象,想停止某个Timer直接调用其cancel()方法,写个小例子import java.util.Date;import java.util.Timer;import java.util.TimerTask;public class Test{public static void main(String args[])throws InterruptedException {TimerTask task1=new TimerTask(){public void run(){TODO Auto-generated method stubSystem.out.println(\"task1\");}};TimerTask task2=new TimerTask(){public void run(){TODO Auto-generated method stubSystem.out.println(\"task2\");}};Timer t1=new Timer();Timer t2=new Timer();t1.schedule(task1,new Date(),1000);每隔一秒输出t2.schedule(task2,new Date(),1000);每隔一秒输出Thread.sleep(5000);等待5秒t1.cancel();停止定时器t1Thread.sleep(5000);等待5秒t2.cancel();停止定时器t2}}

java中两个定时器,如何在一个定时器知道另一个定时器的时间呢 java 线程之间的成员变量是无法互相访问,这不是ANDROID。你可以用一个局部变量,A线程的时间每一秒都复制到那个变量上,这样B线程就可以访问得到时间了。当然了,这样时间并不会太精确,但也是在豪秒之内的误差。一般的使用足够了。不是金融级别的,对于毫秒差没有什么感觉。

java如何让一个定时器终止一段时间 java中让定时器终止的方法是使用timer的cancel方法,实例如下:import java.util.Timer;import java.util.TimerTask;public class Main {Timer timer;public Main(int seconds){timer=new Timer();timer.schedule(new ToDoTask(),seconds*1000);定时器开始执行}class ToDoTask extends TimerTask {public void run(){System.out.println(\"working\");timer.cancel();定时器终止}}public static void main(String args[]){new Main(5);}}

随机阅读

qrcode
访问手机版