如何优雅的关闭 Java线程池
如何優(yōu)雅的關(guān)閉 Java線程池
簡(jiǎn)介 在開發(fā)中使用線程池去執(zhí)行異步任務(wù)是比較普遍的操作,然而雖然有些異步操作我們并不十分要求可靠性和實(shí)時(shí)性,但總歸業(yè)務(wù)還是需要的。如果在每次的服務(wù)發(fā)版過程中,我們不去介入線程池的停機(jī)邏輯,那么很有可能就會(huì)造成線程池中隊(duì)列的任務(wù)還未執(zhí)行完成,自然就會(huì)造成數(shù)據(jù)的丟失。
探究
注意 ,本文所有前提是對(duì)進(jìn)程進(jìn)行下線時(shí)使用的是kill -15
我們知道Spring已經(jīng)實(shí)現(xiàn)了自己的優(yōu)雅停機(jī)方案