Многопоточное приложение — это такое приложение, у которого в неком процессе работает больше одного потока. По умолчанию каждый процесс вашего приложения имеет, по крайней мере, один поток исполнения. Вы можете создавать несколько потоков для выполнения параллельной обработки. Это может существенно повысить производительность, особенно на современных многоядерных процессорах и при использовании технологии гиперпоточности. Однако многопоточность дается не просто так. Такой код сложнее писать и сложнее отлаживать. Если вы когда-либо писали многопоточное приложение, то вы уже знаете об этом.
К счастью, Visual Studio предоставляет несколько инструментов, которые немного облегчают эту работу. Мы не будем здесь описывать программирование многопоточного приложения; вместо этого мы опишем опции, предназначенные для отладки такого приложения. Вот список этих инструментов и функций:
□ возможность просматривать потоки вашего кода во время сеанса отладки;
□ панель инструментов Debug Location, используемая для просмотра процессов, потоков и помеченных потоков;
□ окно Thread, используемое для работы со списком потоков вашего приложения;
□ фильтры точек останова, которые позволяют вам настроить точку останова для конкретного потока.
Давайте более подробно рассмотрим все эти функциональные возможности.