У нас есть интерфейс IPoller, для которого мы имеем различные реализации. У нас есть процесс, который возьмет IPoller и запустит его в отдельном потоке. Я пытаюсь придумать общий способ предоставления обработки исключений для любых IPollers, которые не делают этого сами.
Мое первоначальное мышление состояло в том, чтобы создать реализацию IPoller, которая будет принимать IPoller и просто предоставить некоторые функции ведения журнала. Вопрос, на который я столкнулся, заключается в том, как я могу обеспечить эту обработку ошибок? Если у меня есть IPoller.Start(), который является целью для Thread, это то, где произойдет исключение? Или есть что-то на самой нити, в которую я могу зацепиться?