Condividi tramite


ServiceBase.OnPause Metodo

Definizione

Se implementato in una classe derivata, viene eseguito quando un comando Pause viene inviato al servizio da Service Control Manager (SCM). Specifica le azioni da eseguire quando un servizio viene sospeso.

protected:
 virtual void OnPause();
protected virtual void OnPause();
abstract member OnPause : unit -> unit
override this.OnPause : unit -> unit
Protected Overridable Sub OnPause ()

Commenti

Usare OnPause per specificare l'elaborazione che si verifica quando il servizio riceve un comando Pause. OnPause è previsto che venga eseguito l'override quando la CanPauseAndContinue proprietà è true.

Quando si continua un servizio sospeso (tramite la console servizi o a livello di codice), l'elaborazione OnContinue viene eseguita e il servizio diventa nuovamente attivo.

Il comando Pause consente solo all'applicazione di reagire a un evento specifico. OnPause non esegue alcuna operazione per il servizio che non viene definito.

L'invio di una richiesta di sospensione al servizio può risparmiare risorse di sistema perché la sospensione non richiede il rilascio di tutte le risorse di sistema. Ad esempio, se i thread sono stati aperti dal processo, la sospensione di un servizio anziché l'arresto può consentire ai thread di rimanere aperti, eliminando la necessità di riallocarli quando il servizio continua. Se si definisce Pause per rilasciare tutte le risorse di sistema, si comporta come un comando Stop.

Impostare CanPauseAndContinue su truee eseguire l'override e OnContinue per specificare l'elaborazione che deve verificarsi quando Gestione controllo servizi passa una richiesta di sospensione OnPause o continuazione al servizio. OnContinue deve essere implementato per annullare l'elaborazione in OnPause.

Se CanPauseAndContinue è false, SCM non passerà le richieste Pause o Continue al servizio, quindi i OnPause metodi e OnContinue non verranno chiamati anche se implementati. In SCM i Pause controlli e Continue vengono disabilitati quando CanPauseAndContinue è false.

Si applica a

Vedi anche