ICorDebugController::Stop — Metoda
Wykonuje zatrzymanie współpracy na wszystkich wątkach, które uruchamiają kod zarządzany w procesie.
Składnia
HRESULT Stop (
[in] DWORD dwTimeoutIgnored
);
Parametry
dwTimeoutIgnored
Nie używany.
Uwagi
Stop
wykonuje kooperatywne zatrzymanie na wszystkich wątkach z uruchomionym kodem zarządzanym w procesie. Podczas sesji debugowania tylko zarządzane wątki niezarządzane mogą być nadal uruchamiane (ale będą blokowane podczas próby wywołania kodu zarządzanego). Podczas sesji debugowania międzyoperacyjnej wątki niezarządzane również zostaną zatrzymane. Wartość jest obecnie ignorowana i traktowana jako NIESKOŃCZONA dwTimeoutIgnored
(-1). Jeśli spółdzielczy przystanek zakończy się niepowodzeniem z powodu zakleszczenia, wszystkie wątki zostaną zawieszone i E_TIMEOUT zostanie zwrócona.
Uwaga
Stop
jest jedyną synchroniczną metodą w interfejsie API debugowania. Po Stop
powrocie S_OK proces zostanie zatrzymany. Nie podano wywołania zwrotnego w celu powiadamiania odbiorników o zatrzymaniu. Debuger musi wywołać funkcję ICorDebugController::Kontynuuj , aby umożliwić wznowienie procesu.
Debuger obsługuje licznik zatrzymania. Gdy licznik przejdzie do zera, kontroler zostanie wznowiony. Każde wywołanie do Stop
lub każde wysłane wywołanie zwrotne zwiększa licznik. Każde wywołanie w celu ICorDebugController::Continue
dekrementacji licznika.
Wymagania
Platformy: Zobacz Wymagania systemowe.
Nagłówka: CorDebug.idl, CorDebug.h
Biblioteki: CorGuids.lib
wersje .NET Framework: dostępne od wersji 1.0