import java.util.concurrent.Executors;
import java.util.concurrent.ScheduledExecutorService;
import java.util.concurrent.TimeUnit;
public class BeeperControl2 {
ScheduledExecutorService service = Executors.newScheduledThreadPool(2);
int index = 0 ;
public BeeperControl2(){
/*
*
* ScheduledFuture<?> scheduleAtFixedRate(Runnable command,
long initialDelay,
long period,
TimeUnit unit)
参数:
command - 要执行的任务
initialDelay - 首次执行的延迟时间
period - 连续执行之间的周期
unit - initialDelay 和 period 参数的时间单位
返回:
表示挂起任务完成的 ScheduledFuture,并且其 get() 方法在取消后将抛出异常
抛出:
RejectedExecutionException - 如果无法安排执行该任务
NullPointerException - 如果 command 为 null
IllegalArgumentException - 如果 period 小于等于 0
*/
service.scheduleAtFixedRate(new Runnable(){
@Override
public void run() {
System.out.println("run... "+(index++));
}
}, 5, 5,TimeUnit.SECONDS);
}
public static void main(String[] args) {
new BeeperControl2();
}
}