Ответ 1
Пробовали ли вы использовать окно "Темы" в Visual Studio (в меню "Отладка/Windows" )?
Вы можете заморозить потоки и переключаться между ними
Я унаследовал приложение, которое запустило 100 потоков. Это делает мою отладочную жизнь чрезвычайно сложной. Есть ли способ заставить Visual Studio следовать одному потоку?
Пробовали ли вы использовать окно "Темы" в Visual Studio (в меню "Отладка/Windows" )?
Вы можете заморозить потоки и переключаться между ними
Если возможно, я предлагаю, чтобы в режиме отладки вы ограничивали количество созданных потоков, к гораздо более управляемому числу, например, 3. Таким образом, вы все равно можете диагностировать ошибки из-за взаимодействия между потоками, но вы не полностью снег под.
Отладка многопоточных программ чрезвычайно сложна. Как только отладчик что-то делает, поведение программы полностью меняется. Также "следующий" только один поток не будет работать, чтобы найти все проблемы. Вы должны позволить всем потокам работать без прерывания анализа проблемы.
Итак, вам нужно отлаживать, не используя VS. Как это можно сделать для приложений реального времени, проверьте мою статью CodeProject: отладка многопоточного кода в режиме реального времени. Извините за предоставление ссылки, но копирование всего здесь будет слишком большим.