Метод ICorDebugController::Stop
Выполняет совместную остановку для всех потоков, выполняющих управляемый код в процессе.
Синтаксис
HRESULT Stop (
[in] DWORD dwTimeoutIgnored
);
Параметры
dwTimeoutIgnored
Не используется.
Комментарии
Stop
выполняет совместную остановку для всех потоков, выполняющих управляемый код в процессе. Во время сеанса отладки с управляемым доступом неуправляемые потоки могут продолжать выполняться (но будут заблокированы при попытке вызова управляемого кода). Во время сеанса отладки взаимодействия неуправляемые потоки также будут остановлены. Значение dwTimeoutIgnored
в настоящее время игнорируется и обрабатывается как INFINITE (-1). Если совместная остановка завершается сбоем из-за взаимоблокировки, все потоки приостанавливаются и возвращается E_TIMEOUT.
Примечание
Stop
— единственный синхронный метод в API отладки. Когда Stop
возвращает S_OK, процесс останавливается. Обратный вызов не выполняется для уведомления прослушивателей о остановке. Чтобы возобновить процесс, отладчик должен вызвать ICorDebugController::Continue .
Отладчик поддерживает счетчик остановки. Когда счетчик переходит к нулю, контроллер возобновляется. Каждый вызов Stop
или каждый отправленный обратный вызов увеличивает счетчик. Каждый вызов уменьшает ICorDebugController::Continue
значение счетчика.
Требования
Платформы: см. раздел Требования к системе.
Заголовок: CorDebug.idl, CorDebug.h
Библиотека: CorGuids.lib
версии платформа .NET Framework: доступно с версии 1.0.
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по