线程池关闭
线程池默认创建的是用户态线程, 使用完需要手动调用shutdown关闭,
否则用户态线程会阻塞JVM退出. 程序会一直挂在那里.
如果既不想阻塞JVM, 又不想调用shutdown,
那可以把线程设置为demon, 当JVM退出时,发现没有用户态线程存在了, 就会进入JVM关闭流程.
但是这样用并不正确, 线程池的回收, 以及其它的资源回收应该创建它的人来负责, 因为这里涉及到
优雅关闭和一些业务相关的回收细节, 靠JVM暴力关闭是不对的.
线程池默认创建的是用户态线程, 使用完需要手动调用shutdown关闭,
否则用户态线程会阻塞JVM退出. 程序会一直挂在那里.
如果既不想阻塞JVM, 又不想调用shutdown,
那可以把线程设置为demon, 当JVM退出时,发现没有用户态线程存在了, 就会进入JVM关闭流程.
但是这样用并不正确, 线程池的回收, 以及其它的资源回收应该创建它的人来负责, 因为这里涉及到
优雅关闭和一些业务相关的回收细节, 靠JVM暴力关闭是不对的.