Java中的轮询方法总结
在Java中,实现轮询通常涉及到使用java.util.concurrent
包中的类和方法。以下是一些常用的轮询技术及其简单示例:
ScheduledExecutorService
:用于安排定时任务的执行。
import java.util.concurrent.*;
public class ScheduledTaskExample {
public static void main(String[] args) {
ScheduledExecutorService executor = Executors.newScheduledThreadPool(1);
Runnable task = () -> System.out.println("执行任务:" + System.nanoTime());
// 延迟1秒后开始执行任务,之后每3秒执行一次
executor.scheduleAtFixedRate(task, 1, 3, TimeUnit.SECONDS);
}
}
ExecutorService
:用于异步执行任务。
import java.util.concurrent.*;
public class FixedThreadPoolExample {
public static void main(String[] args) {
ExecutorService executor = Executors.newFixedThreadPool(2);
Runnable task = () -> System.out.println("执行任务:" + System.nanoTime());
executor.submit(task);
executor.submit(task);
// 关闭ExecutorService
executor.shutdown();
}
}
java.util.Timer
:用于调度单次或重复任务。
import java.util.Timer;
import java.util.TimerTask;
public class TimerTaskExample {
public static void main(String[] args) {
Timer timer = new Timer();
TimerTask task = new TimerTask() {
public void run() {
System.out.println("执行任务:" + System.nanoTime());
}
};
// 延迟1秒后执行任务
timer.schedule(task, 1000);
// 关闭Timer
timer.cancel();
}
}
这些是Java轮询的基本示例。根据需要,你可以选择合适的轮询技术来实现你的应用程序需求。
评论已关闭