2011-01-06 6 views
5

У меня есть много короткоживущих потоков, которые обновляют мою программу, событиями, запущенными из соединения сокета. Моя проблема заключается в том, что я не знаю, как отлаживать это, например, как получить правильную информацию о том, где в коде существуют исключения. Потому что я получаю, например, исключение, как показано ниже, и это будет просто печать в окне «Невероятное». Нет всплывающего окна, и он не выделяет ни одной строки в коде или не показывает, какой метод он использовал.Как отлаживать исключение в другом потоке?

Что мне не хватает? Что я могу сделать, чтобы увидеть эти вещи? И какие улучшения VS2010 дают в этой ситуации, если они есть?

A first chance exception of type 'System.InvalidOperationException' occurred in System.Core.dll 
A first chance exception of type 'System.Threading.ThreadAbortException' occurred in mscorlib.dll 
A first chance exception of type 'System.Threading.ThreadAbortException' occurred in Krs.Ats.IBNet.dll 

ответ

10

Перейти к "Debug -> Исключения ...", найдите раздел "Common Language Runtime Исключения" и установите флажок "кинули" знак. Теперь начните отладку своего приложения. Как только какое-либо из исключений CLR произойдет, выполнение остановится на этой строке.

- Pavel

+0

Совершенно потрясающе! Благодаря! :) – bretddog

+0

Это просто помогло мне, +1 – JMK

+0

решила также совершенно другую: до сих пор отладчик замораживался после каждого прогона. Как только я изменил вариант отладки, как в ответе @volpav, IDE вернется сразу же после выполнения кода! –

Смежные вопросы