У меня есть ветка, которая просто изгоняет .. Я хотел бы знать, кто убивает мою ветку и почему.
Мне приходит в голову, что моя нить прерывается ОС, но я хотел бы подтвердить это и, если возможно, узнать, почему это убивает ее.
Что касается потока, я могу утверждать, что до его смерти требуется не менее 40 минут, но внезапно он умирает примерно через 5 минут.
public void RunWorker()
{
Thread worker = new Thread(delegate()
{
try
{
DoSomethingForALongLongTime();
}
catch(Exception e)
{
//Nothing is never logged :(
LogException(e);
throw e;
}
});
worker.IsBackground = true;
worker.SetApartmentState(System.Threading.ApartmentState.STA);
worker.Start();
}
РЕДАКТИРОВАТЬ: Адресация ответов
- Try / Catch Возможные исключения:
Он реализован и ничего не ловит: (
- Основная нить умирает:
Этот поток создан веб-сервером, который продолжает работать
- Завершение работы:
Работа не завершена, так как она, наконец, влияет на базу данных, я могу проверить, выполнено ли это, когда поток умирает.
Размышления об этих вещах привели меня к этому вопросу: кто убивает мои темы?
пс. Это не леди Голдент в гостиной с подсвечником :) 1023 *