标签:
http://407827531.iteye.com/blog/1329597
import java.util.concurrent.Callable; import java.util.concurrent.ExecutionException; import java.util.concurrent.Executors; import java.util.concurrent.ScheduledExecutorService; import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; public class ScheduledExecutorServiceTest { public static void main(String[] args) throws InterruptedException,ExecutionException { //*1 ScheduledExecutorService service=Executors.newScheduledThreadPool(2); //*2 Runnable task1=new Runnable() { public void run() { System.out.println("Taskrepeating."); } }; //*3 final ScheduledFuture future1=service.scheduleAtFixedRate(task1,0,1,TimeUnit.SECONDS); //*4 ScheduledFuture future2=service.schedule(new Callable() { public String call() { future1.cancel(true); return "taskcancelled!"; } },10,TimeUnit.SECONDS); System.out.println(future2.get()); //*5 service.shutdown(); } }
这个例子有两个任务,第一个任务每隔一秒打印一句“Taskrepeating”,第二个任务在5秒钟后取消第一个任务。
*5:关闭服务。
标签:
原文地址:http://www.cnblogs.com/liaolandemengxiang/p/4240883.html