看Executor的设计,并没有这种api去检查所有的线程都执行完毕..一个比较通俗的做法是,当向线程池内增加一个线程的时候,用一个线程安全的变量去记录它.当它结束的时候,再从这个线程安全的变量中减去它.当它等于0的时候.shutdown这个线程池.还有一种做法是,针对已知的任务队列创建不同的线程池,然后针对这个任务队列进行管理.当所有的任务都已经完成的时候,shutdown这个线程池.2017年8月25日 12:51:35