Имеет ли смысл использовать ThreadPool с размером пула всего 1, чтобы просто перерабатывать один поток снова и снова для разных применений в приложении?Вместо того, чтобы выполнять новый поток (Runnable ()) и т. Д., А затем позволить сборщику мусора обрабатывать удаление потока, я подумал, что было бы более эффективно просто использовать этот поток для разных заданий, которые не нужно выполнять вместе.
Это то, что я сейчас делаю, чтобы определить 1 пул размера пула.
private static int poolSize = 1;
private static int maxPoolSize = 1;
private static long keepAliveTime= 10;
private static final ArrayBlockingQueue<Runnable> queue = new ArrayBlockingQueue<Runnable>(100);
private static ThreadPoolExecutor threadPool = new ThreadPoolExecutor(poolSize, maxPoolSize, keepAliveTime, TimeUnit.SECONDS, queue);