Nella nostra applicazione, abbiamo un sacco di ThreadPoolExecutor
s. Quando l'applicazione è inattiva, anche gli ThreadPoolExecutor
s sono inattivi, ma il numero di thread inattivi nell'applicazione è molto alto.È buona norma impostare allowCoreThreadTimeOut() in ThreadPoolExecutor?
Nel dump del thread, ho scoperto che la maggior parte dei thread appartiene ai ThreadPoolExecutor
s in attesa di attività. Ci sono effetti collaterali nel mantenere in vita questi thread di lavoro? Devo usare setAllowCoreThreadTimeOut()
in ThreadPoolExecutor
in modo che i thread di lavoro muoiano dopo essere rimasti inattivi per un po '?