Есть ли другие причины исключения RejectedExecutionException, кроме shutdown()
, вызываемого ранее в Executor (я использую singleThreadExecutor)? У меня есть отчеты о сбоях, как показано ниже. Они очень редки, и я не могу воспроизвести на своих устройствах. Мой код слишком сложный для публикации, но я не вижу, как логически возможно, что любые задачи отправляются после вызова shutdown()
.Каковы причины исключения RejctedExecutionException?
Есть ли другие причины, по которым здесь может быть выбрано исключение RejectedExecutionException?
java.util.concurrent.RejectedExecutionException: Задача [email protected] отклонена от [email protected] [Terminated, размер пула = 0, активных потоков = 0 , поставленные задачи = 0, завершенные задания = 9813] на java.util.concurrent.ThreadPoolExecutor $ AbortPolicy.rejectedExecution (ThreadPoolExecutor.java:1979) на java.util.concurrent.ThreadPoolExecutor.reject (ThreadPoolExecutor.java:786) на java.util.concurrent.ThreadPoolExecutor.execute (ThreadPoolExecutor.java:1307) по адресу java.util.concurrent .AbstractExecutorService.submit (AbstractExecutorService.java:81) на java.util.concurrent.Executors $ DelegatedExecutorService.submit (Executors.java:562) в com.smp.soundtouchandroid.AACFileAudioSink.write (AACFileAudioSink.java:28) на com.smp.soundtouchandroid.SoundStreamRunnable.processChunk (SoundStreamRunnable.java:469) на com.smp.soundtouchandroid.SoundStreamRunnable.processFile (SoundStreamRunnable.java:406) на com.smp.soundtouchandroid.SoundStreamRunnable. (SoundStreamRunnable.java:223) на java.lang.Thread.run (Thread.java:856)