您的位置:首页 > 其它

ScheduledExecutorService定时任务的使用

2014-03-20 12:23 399 查看
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

       {

              //*创建线程池

               ScheduledExecutorService service=Executors.newScheduledThreadPool(2);

               //*创建要执行的线程代码

               Runnable task=new Runnable()

               {

                    public void run()

                    {

                       System.out.println("Taskrepeating.");

                    }

               };

               //*执行定时线程操作。  task--线程任务  1--启动后首次执行时间  1---之后每次间隔时间  TimeUnit.SECONDS ---时间单位

               final ScheduledFuture future1=service.scheduleAtFixedRate(task,1,1,TimeUnit.SECONDS);

               //*

               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();

   }

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: