Jenkins: убить зависший поток

· автор BaRoN · На чтение уйдёт 1 минута · (94 слова)

Похоже, все люди делают это. Рано или поздно. Обычно мне хватало терпения дождаться завершения по таймауту, в конце концов, можно ведь пойти на кухню, выпить чашечку кофе, но сегодня какой-то особый случай. Зависают и зависают. К чему это я? Да к тому, что вредно столько кофе пить. В интернетах есть куча разных способов убийства потоков, я выбрал для себя вот такой:

Thread.allStackTraces.keySet().find { it.name.contains('baron-project') }?.interrupt()

В одну строчку, вместо кошерного ThreadGroup.enumerate используем некошерный Thread.getAllStackTraces, зато в одну строчку и даже при желании можно легко запомнить :) Стильно, модно, молодёжно, по-грувийскому. С элвис-оператором и куртизанками.

Полезное