ICorDebugController::Stop — Metoda
Wykonuje zatrzymanie współpracy na wszystkich wątkach, które uruchamiają kod zarządzany w tym procesie.
Składnia
HRESULT Stop (
[in] DWORD dwTimeoutIgnored
);
Parametry
dwTimeoutIgnored
Nieużytne.
Uwagi
Stop
wykonuje zatrzymanie współpracy na wszystkich wątkach z uruchomionym kodem zarządzanym w procesie. Podczas sesji debugowania tylko zarządzane wątki niezarządzane mogą nadal działać (ale będą blokowane podczas próby wywołania kodu zarządzanego). Podczas sesji debugowania międzyoperacyjnego wątki niezarządzane również zostaną zatrzymane. Wartość dwTimeoutIgnored
jest obecnie ignorowana i traktowana jako NIESKOŃCZONA (-1). Jeśli przerwa współpracy zakończy się niepowodzeniem z powodu zakleszczenia, wszystkie wątki zostaną zawieszone i E_TIMEOUT zostanie zwrócony.
Uwaga
Stop
jest jedyną metodą synchroniczną w interfejsie API debugowania. Gdy Stop
zwraca S_OK, proces zostanie zatrzymany. Nie podano wywołania zwrotnego w celu powiadamiania odbiorników o zatrzymaniu. Debuger musi wywołać element ICorDebugController::Continue , 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łówek: CorDebug.idl, CorDebug.h
Biblioteka: CorGuids.lib
Wersje programu .NET Framework: dostępne od wersji 1.0