1、由于Java对Integer缓存-128到127,每次count+=1已经指向不同的对象,上的不是一个锁了。 2、线程池的shutdown方法并不会马上关闭线程池,而是等到所有任务执行完才关闭。主线程执行完shutdown方法就继续打印count,有可能导致任务没有全部执行完。