Я создал threadpool, используя ExecutorService
, в своем приложении для вызова поставщика websrvice, используя приведенный ниже код.Нужно ли отключать ExecutorService fixedThreadPool
ExecutorService executor = Executors.newFixedThreadPool(getThreadPoolSize());
for (int i = 0; i < list.size(); i++) {
Request ecpReq = list.get(i);
thRespLst.add(executor.submit(new Task(ecpReq)));
}
Хотел знать, мы должны позаботиться о выключая ThreadPool или что-то, в принципе я не хочу висит потоков в производственной среде.
Javadoc говорит: «Неиспользованный« ExecutorService »должен быть закрыт, чтобы разрешить регенерацию его ресурсов». – Marvin
Итерирование не является потокобезопасным: вызов 'list.size()' может возвращать номер 'N' и сразу после этого, прежде чем вы вызовете' list.get (i) элемент 'Nth', возможно, был удален. –