请问:
import java.util.concurrent.*;public static void main(String[]args)
{
  ExecutorService exec = Executors.newCachedThreadPool();
  for(int i=0;i<5;i++)
  {
    exec.execute(new LiftOff());//LiftOff类实现了Runnable接口
    exec.shutdown();
  }
}
问:Executors.newCachedThreadPool();exec.execute(new LiftOff());exec.shutdown();
这3个方法不懂 看了jdk文档 也没怎么看明白 
请哪位高手 帮帮忙详细解释一下 结合这个程序
谢谢

解决方案 »

  1.   

     ExecutorService exec = Executors.newCachedThreadPool(); //新建一个线程池。
      for(int i=0;i <5;i++) 
      { 
        exec.execute(new LiftOff());//LiftOff类实现了Runnable接口 //产生新线程
        exec.shutdown(); //关闭线程池
      } 
      

  2.   

    public static void main(String[]args)
    {
      ExecutorService exec = Executors.newCachedThreadPool();
      for(int i=0;i <5;i++)
      {
    System.out.println(exec.isShutdown());
        exec.execute(new LiftOff());//LiftOff类实现了Runnable接口  }
      exec.shutdown();
    }
    这样写似乎会更合理一点
      

  3.   


    正如楼上所说, 如果在for循环中把线程池给关闭了, 然后又向其中创建新的线程, 没有意义.