Исключение прерывания потока выдается, когда поток прерывается путем ручного вызова Thread.Interrupt .Сама Windows не будет прерывать ваш поток, используя этот метод.Обычно ваша программа контролирует, когда потоку посылается сигнал прерывания (не всегда).Так как сигнал прерывания может использоваться для некоторого управления потоком, он обычно не отправляется дважды в быстрой последовательности.
ThreadInterruptedException генерируется в прерванном потоке, но не до тех пор, пока поток не заблокируется.Если поток никогда не блокируется, исключение никогда не генерируется, и, таким образом, поток может завершиться без прерывания.
Если ваш поток никогда не спит или ожидает других объектов (вход в состояние WaitSleepJoin), вы 'Вы никогда не увидите выброшенное исключение.
Защита вашей ветки должна быть приемлемой.Не забывайте, что исключение ThreadAbortException также может создаваться, и оно немного более распространено и может создаваться чаще (приложение закрывается и т. Д.).