Исключение, как и любое другое исключение C ++. Если вы решите не ловить его, это вызовет тот же эффект, что и любое другое необработанное исключение.
Если оставить его необработанным, он не будет распространяться на основной поток, но может вызвать другое нежелательное поведение. В Visual C ++, по умолчанию это завершит ваш процесс , например.
В целом практика защитного программирования диктует, что вы должны отлавливать любое исключение, которое может выдать ваш код, - точно так же, как вы проверяли бы наличие ошибок в API-интерфейсе ОС, который вы вызывали.
Здесь есть фон для прерывания здесь от человека, который написал много кода Boost.Thread.