两种实现方式
 
1:继承Thread 类,重写run()
2:实现 runable接口 ,实现run()
 
多个线程运行,一旦一个线程长时间不结束,甚至死锁,就可能造成大量线程拥堵。
 
执行超时返回:
 
   
   
   
   
  1. private ExecutorService executorService = 
  2. Executors.newSingleThreadExecutor();
  3. //concurrent提供的执行器,用来执行和跟踪Future异步任务。 
  4.     private FutureTask futureTask = null;//定义一个异步任务 
  5.     private static final int TIME_OUT = 10 * 60;//假定10分钟超时 
 
 
   
   
   
   
  1. futureTask = new FutureTask(new MyTask()); 
  2.  
  3.                executorService.execute(futureTask); 
  4.  
  5.                futureTask.get(TIME_OUT, TimeUnit.SECONDS); 
 
 
   
   
   
   
  1. class MyTask implements Callable { 
  2.  public Object call() throws Exception {      return null
  3.         } 
  4.   
  5.   
  6.     }