日期:2014-05-18  浏览次数:20598 次

线程池。。是否有必要实现一个监控线程?
目标: 线程一旦 timeout,就会被从线程池中清除掉。 
  
有两种方案 
1. 设计工作线程,使之有timeout自检的功能,超时之后,自己退出,相当于是自杀; 
2. 工作线程没有自检功能;设计一个单独的监控线程,发现线程池中有超时线程,kill之,相当于他杀; 
  
一般都认为方案1比较好,因为让线程自杀是教科书上提到的嘛。。 
  
看到书上说,不推荐爱从线程的外部去杀死一个线程;我想问的是,对于方案2,真的是那么不堪嘛?有什么比较好的线程池,对于方案2,有较好的支持? 
  
谢谢!! 
线程池

------解决方案--------------------
java自带非常好的线程池。ThreadPollExecutor。
可以设置keepAlive时间,空闲过期就会你说的自杀。