Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Esegue un arresto cooperativo in tutti i thread che eseguono codice gestito nel processo.
Sintassi
HRESULT Stop (
[in] DWORD dwTimeoutIgnored
);
Parametri
dwTimeoutIgnored Non utilizzato.
Osservazioni:
Stop esegue un arresto cooperativo su tutti i thread che eseguono codice gestito nel processo. Durante una sessione di debug solo gestito, i thread non gestiti possono continuare a essere eseguiti (ma verranno bloccati quando si tenta di chiamare il codice gestito). Durante una sessione di debug di interoperabilità, verranno arrestati anche i thread non gestiti. Il dwTimeoutIgnored valore è attualmente ignorato e considerato come INFINITE (-1). Se l'arresto cooperativo non riesce a causa di un deadlock, tutti i thread vengono sospesi e E_TIMEOUT viene restituito.
Annotazioni
Stop è l'unico metodo sincrono nell'API di debug. Quando Stop restituisce S_OK, il processo viene arrestato. Non viene assegnato alcun callback per notificare ai listener l'arresto. Il debugger deve chiamare ICorDebugController::Continue per consentire la ripresa del processo.
Il debugger gestisce un contatore di arresto. Quando il contatore passa a zero, il controller viene ripreso. Ogni chiamata a Stop o a ogni callback inviato incrementa il contatore. Ogni chiamata a ICorDebugController::Continue decrementa il contatore.
Requisiti
Piattaforme: Vedere Sistemi operativi supportati da .NET.
Intestazione: CorDebug.idl, CorDebug.h
Biblioteca: CorGuids.lib
Versioni di .NET: Disponibile a partire da .NET Framework 1.0