Поделиться через


Метод 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

См. также