У меня включен асинхронный метод с использованием аннотации @Async. Время от времени я вижу SimpleAsyncTaskExecutor количество потоков увеличивается экспоненциально. Любая идея по этому поведению?Проблема с методом загрузки Spring Async
0
A
ответ
0
Если оно растет буквально экспоненциально, это звучит, как метод асинхронного вызова, возможно, вызывает себя?
0
По умолчанию Spring использует SimpleAsyncTaskExecutor для асинхронного запуска методов. SimpleAsyncTaskExecutor генерирует новый поток с каждой задачей и не поддерживает объединение потоков и очередность задач. Итак, если метод async вызывается несколько раз за короткий промежуток времени, для каждой задачи будет открыто несколько потоков. Вы должны определить своего собственного исполнителя. См. Следующую ссылку: http://www.baeldung.com/spring-async
Вы настроили CustomThreadPool? – user121290
Нет, я не настроил CustomThreadPool – Suraj
Лучше, если вы настроите customThreadPool.Проверьте это. http://stackoverflow.com/questions/13206792/spring-async-limit-number-of-threads – user121290