Я унаследовал приложение, которое запустило 100 потоков. Это делает мою отладочную жизнь чрезвычайно сложной. Есть ли способ заставить Visual Studio следовать одному потоку?Отладка многопоточного приложения
ответ
Вы пробовали использовать окно «Темы» в Visual Studio (в меню «Отладка/Windows»)?
Вы можете заморозить темы и переключаться между ними
Если возможно, я полагаю, что в режиме отладки можно ограничить количество потоков, которые создаются, к гораздо более управляемому числу, например, 3. Таким образом, вы можете все еще может диагностировать ошибки из-за взаимодействия между потоками, но вы не полностью заснежены.
Отладка многопоточных программ чрезвычайно сложна. Как только отладчик что-то делает, поведение программы полностью меняется. Также «следующий» только один поток не будет работать, чтобы найти все проблемы. Вы должны позволить всем потокам работать без каких-либо перерывов для анализа проблемы.
Так что вам нужно отлаживать, не используя VS. Как это можно сделать для приложений реального времени, проверьте мою статью CodeProject: Debugging multithreaded code in real time. Извините за предоставление ссылки, но копирование всего здесь просто слишком велико.
Также предложение в here только что решило мою проблему.
if you hit a breakpoint, disable it, and then begin stepping you should not stop on a different thread
- 1. Отладка многопоточного сервера
- 2. Отладка многопоточного приложения C++ с большим пулом потоков
- 3. Мониторинг многопоточного приложения
- 4. Ошибка многопоточного приложения C++
- 5. Написание многопоточного приложения C#
- 6. Концепция многопоточного приложения
- 7. Стратегии для многопоточного приложения
- 8. Единичное тестирование многопоточного приложения?
- 9. Последняя тема многопоточного приложения
- 10. Завершение многопоточного приложения
- 11. Воспроизведение/отладка какого-то многопоточного ада
- 12. Анализ и профилирование многопоточного приложения
- 13. дизайн (шаблон) для многопоточного приложения
- 14. Поиск номеров процессов многопоточного приложения
- 15. Вызывать метод для многопоточного приложения?
- 16. Предварительное приложение многопоточного приложения Python
- 17. Многопоточного приложения для отладки проблема
- 18. Отладка приложения приложения Silverlight
- 19. Android отладка приложения USB-приложения
- 20. Хостинг многопоточного приложения mvc в AppHarbor
- 21. Архитектура многопоточного приложения с интерфейсом REST
- 22. питона: добавление функции сброса многопоточного приложения
- 23. Измерение использования стека для многопоточного приложения Linux
- 24. Клиенты отключаются от многопоточного приложения Client/Server
- 25. Пошагового многопоточного приложения с помощью GDB
- 26. Высокая доступность автономного Java многопоточного приложения
- 27. Создание многопоточного приложения Java Chat Chat.
- 28. Проектирование многопоточного приложения (ищет шаблоны проектирования)
- 29. Предложите улучшенный подход для многопоточного приложения
- 30. Правильное завершение многопоточного консольного приложения Windows
Какую версию VS вы используете? VS 2008/2010 имеет средство, где вы можете отметить потоки - http://msdn.microsoft.com/en-us/library/bb385628(v=VS.90).aspx - это любая помощь? – InSane 2010-12-06 09:13:48
Visual Studio 2010 – 2010-12-06 09:25:08