Должны ли мы устанавливать флаг прерывания при перехвате InterruptedException
внутри задачи, управляемой ExecutorService
? Или мы должны просто проглотить InterruptedException
?
Пример:
final ExecutorService service = ...;
final Object object = ...;
service.submit(() -> {
try {
while (!condition) {
object.wait();
}
} catch (final InterruptedException exception) {
Thread.currentThread().interrupt(); // yes or no?
}
});
ExecutorService
в чем разница между проглатыванием и не проглатыванием исключения? Как ведет себяExecutorService
в обоих случаях? - person   schedule 01.04.2016