| New file | 
 |  |  | 
 |  |  | package com.dy.common.threadPool; | 
 |  |  |  | 
 |  |  |  | 
 |  |  | public class Test { | 
 |  |  |  | 
 |  |  | // | 
 |  |  | //   public static void main(String args[])throws Exception { | 
 |  |  | ////      Test t = new Test(); | 
 |  |  | ////      t.testShort1(); | 
 |  |  | ////      t.testShort2(); | 
 |  |  | ////      t.testLong(); | 
 |  |  | //   } | 
 |  |  |  | 
 |  |  |    /** | 
 |  |  |     * 测试增加线程线程   | 
 |  |  |     * @throws Exception  | 
 |  |  |     * | 
 |  |  |     */ | 
 |  |  |    @SuppressWarnings("unused") | 
 |  |  |    private void testShort1() throws Exception { | 
 |  |  |       TreadPoolFactory.initThreadPoolShort("测试线程组",   2, 1, 10, 20); | 
 |  |  |       ThreadPool.Pool pool = TreadPoolFactory.getThreadPoolShort() ; | 
 |  |  |       try { | 
 |  |  |          int n = 1 ; | 
 |  |  |          Thread.sleep(1000); | 
 |  |  |          while (n < 4) { | 
 |  |  |             System.out.println("加入短工作任务(" + n + ")"); | 
 |  |  |             pool.putJob(new ThreadPool.Job() { | 
 |  |  |                public void execute() { | 
 |  |  |                   System.out.println("!!!!!开始短工作" + this.hashCode()); | 
 |  |  |                   try { | 
 |  |  |                      Thread.sleep(2000); | 
 |  |  |                   } catch (Exception e) { | 
 |  |  |                      ; | 
 |  |  |                   } | 
 |  |  |                   System.out.println("!!!!!结束短工作" + this.hashCode()); | 
 |  |  |                } | 
 |  |  |                @Override | 
 |  |  |                public void destroy(){ | 
 |  |  |                } | 
 |  |  |                @Override | 
 |  |  |                public boolean isDestroy(){ | 
 |  |  |                   return false ; | 
 |  |  |                } | 
 |  |  |             }); | 
 |  |  |             n++ ; | 
 |  |  |             Thread.sleep(100); | 
 |  |  |          } | 
 |  |  |       } catch (Exception e) { | 
 |  |  |  | 
 |  |  |       } | 
 |  |  |    } | 
 |  |  |    /** | 
 |  |  |     * 测试增加线程线程   | 
 |  |  |     * @throws Exception  | 
 |  |  |     * | 
 |  |  |     */ | 
 |  |  |    @SuppressWarnings("unused") | 
 |  |  |    private void testShort2() throws Exception { | 
 |  |  |       TreadPoolFactory.initThreadPoolShort("测试短工作线程组", 2, 1, 5, 6); | 
 |  |  |       ThreadPool.Pool pool = TreadPoolFactory.getThreadPoolShort() ; | 
 |  |  |       try { | 
 |  |  |          int n = 1 ; | 
 |  |  |          Thread.sleep(1000); | 
 |  |  |          while (n < 2) { | 
 |  |  |             System.out.println("加入短工作任务(" + n + ")"); | 
 |  |  |             pool.putJob(new ThreadPool.Job() { | 
 |  |  |                @Override | 
 |  |  |                public void execute() { | 
 |  |  |                   Long times = 0L ; | 
 |  |  |                   System.out.println("!!!!!开始短工作" + this.hashCode()); | 
 |  |  |                   while(true){ | 
 |  |  |                      if(this.isDestroy == null || !this.isDestroy.booleanValue()){ | 
 |  |  |                         times++ ; | 
 |  |  |                         System.out.println("!!!!!执行短工作" + this.hashCode() + " 次数:" + times); | 
 |  |  |                         try { | 
 |  |  |                            Thread.sleep(2000); | 
 |  |  |                         } catch (Exception e) { | 
 |  |  |                            ; | 
 |  |  |                         } | 
 |  |  | //                        System.out.println("!!!!!结束长工作" + this.hashCode()); | 
 |  |  |                      } | 
 |  |  |                   } | 
 |  |  |                } | 
 |  |  |                @Override | 
 |  |  |                public void destroy(){ | 
 |  |  |                   this.isDestroy = true ; | 
 |  |  |                } | 
 |  |  |                @Override | 
 |  |  |                public boolean isDestroy(){ | 
 |  |  |                   if(this.isDestroy == null){ | 
 |  |  |                      return false ; | 
 |  |  |                   } | 
 |  |  |                   return this.isDestroy.booleanValue() ; | 
 |  |  |                } | 
 |  |  |                private Boolean isDestroy; | 
 |  |  |             }); | 
 |  |  |             n++ ; | 
 |  |  |             Thread.sleep(100); | 
 |  |  |          } | 
 |  |  |       } catch (Exception e) { | 
 |  |  |  | 
 |  |  |       } | 
 |  |  |    }/** | 
 |  |  |     * 测试增加线程线程   | 
 |  |  |     * @throws Exception  | 
 |  |  |     * | 
 |  |  |     */ | 
 |  |  |    @SuppressWarnings("unused") | 
 |  |  |    private void testLong() throws Exception { | 
 |  |  |       TreadPoolFactory.initThreadPoolLong("测试长工作线程组", -1, 1, 5, -1); | 
 |  |  |       ThreadPool.Pool pool = TreadPoolFactory.getThreadPoolLong() ; | 
 |  |  |       try { | 
 |  |  |          int n = 1 ; | 
 |  |  |          Thread.sleep(1000); | 
 |  |  |          while (n < 2) { | 
 |  |  |             System.out.println("加入长工作任务(" + n + ")"); | 
 |  |  |             pool.putJob(new ThreadPool.Job() { | 
 |  |  |                @Override | 
 |  |  |                public void execute() { | 
 |  |  |                   Long times = 0L ; | 
 |  |  |                   System.out.println("!!!!!开始长工作" + this.hashCode()); | 
 |  |  |                   while(true){ | 
 |  |  |                      if(this.isDestroy == null || !this.isDestroy.booleanValue()){ | 
 |  |  |                         times++ ; | 
 |  |  |                         System.out.println("!!!!!执行长工作" + this.hashCode() + " 次数:" + times); | 
 |  |  |                         try { | 
 |  |  |                            Thread.sleep(2000); | 
 |  |  |                         } catch (Exception e) { | 
 |  |  |                            ; | 
 |  |  |                         } | 
 |  |  | //                        System.out.println("!!!!!结束长工作" + this.hashCode()); | 
 |  |  |                      } | 
 |  |  |                   } | 
 |  |  |                } | 
 |  |  |                @Override | 
 |  |  |                public void destroy(){ | 
 |  |  |                   this.isDestroy = true ; | 
 |  |  |                } | 
 |  |  |                @Override | 
 |  |  |                public boolean isDestroy(){ | 
 |  |  |                   if(this.isDestroy == null){ | 
 |  |  |                      return false ; | 
 |  |  |                   } | 
 |  |  |                   return this.isDestroy.booleanValue() ; | 
 |  |  |                } | 
 |  |  |                private Boolean isDestroy; | 
 |  |  |             }); | 
 |  |  |             n++ ; | 
 |  |  |             Thread.sleep(100); | 
 |  |  |          } | 
 |  |  |       } catch (Exception e) { | 
 |  |  |  | 
 |  |  |       } | 
 |  |  |    } | 
 |  |  |  | 
 |  |  | } |