Desidero utilizzare lo stesso pool di thread in tutta la mia applicazione. A tal fine, posso rendere statico e globale lo ExecutorService
in modo da poter invocare ThreadUtil.executorService
per ottenere ExecutorService
quando ne ho bisogno.dovrebbe ExecutorService essere statico e globale
public class ThreadUtil {
public static final ExecutorService executorService = Executors.newCachedThreadPool();
}
Va bene per istanza più pool di thread come questo?
Inoltre, la mia applicazione è un server TCP. Se non so quanto dovrebbe essere grande la piscina, è sufficiente usare semplicemente newCachedThreadPool
?
assicurarsi di impostare il limite superiore per numero di thread quando si utilizza CachedThreadPool –