Что рекомендуется делать, если соединение потоков не работает?Java: если присоединение Темы не работают: перерыв или продолжение?
for (List t : threads) {
try {
t.join();
} catch (InterruptedException e) {
log.error("Thread " + t.getId() + " interrupted: " + e);
// and now?
}
}
это рекомендуется разбивать то (что происходит потом с другими нитями, которые еще? Не присоединились) или вы должны по крайней мере попытаться присоединиться к остальной резьбе, а затем идти дальше?
Спасибо за советы!
==>Заключение: Вы должны попробовать еще раз присоединиться к определенной теме t или вы должны прервать этот конкретный поток t и продолжить.
for (List t : threads) {
try {
t.join();
} catch (InterruptedException e) {
try {
// try once! again:
t.join();
} catch (InterruptedException ex) {
// once again exception caught, so:
t.interrupt();
}
}
}
Так что вы думаете об этом решении? и правильно ли это делать «t.interrupt()» или должно быть Thread.currentThread(). interrupt(); ?
спасибо! :-)
Зависит от того, что вы хотите сделать ... – m0skit0
Я думаю, что вы ошибаетесь. Поскольку @aix говорит, если это исключение выбрано, то это текущий поток, который был прерван. Не поток 't' в этом контексте. – Johannes
Так или иначе, что бы вы посоветовали мне сделать? нарушить процедуру? просто продолжайте соединять следующий поток в списке? попробуйте еще раз, чтобы присоединиться ко всем потокам в списке? попробуйте еще раз, чтобы присоединиться к конкретной теме t? Спасибо :-) – nano7