Sdílet prostřednictvím


ServiceBase.OnPause Metoda

Definice

Při implementaci v odvozené třídě se spustí při odeslání příkazu Pause do služby správcem řízení služeb (SCM). Určuje akce, které se mají provést při pozastavení služby.

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

Poznámky

Slouží OnPause k určení zpracování, ke kterému dojde, když služba obdrží příkaz Pozastavit. OnPause je očekáváno, že bude přepsána, pokud CanPauseAndContinue je truevlastnost .

Když budete pokračovat v pozastavené službě (prostřednictvím konzoly služby nebo prostřednictvím kódu programu), OnContinue zpracování se spustí a služba se znovu aktivuje.

Příkaz Pozastavit umožňuje aplikaci reagovat pouze na konkrétní událost. OnPause nedělá nic pro službu, kterou nedefinujete, aby to udělala.

Odeslání žádosti o pozastavení službě může šetřit systémové prostředky, protože pozastavení nemusí uvolnit všechny systémové prostředky. Pokud například proces otevřel vlákna, pozastaví službu a nezastaví ji, může umožnit, aby vlákna zůstala otevřená, obviování nutnosti je při pokračování služby relokovat. Pokud definujete Pozastavit a uvolnit všechny systémové prostředky, chová se jako příkaz Stop.

Nastavte CanPauseAndContinue a truepřepište OnPause a OnContinue určete zpracování, které by mělo nastat, když SCM předá požadavek pozastavit nebo pokračovat do vaší služby. OnContinue by měla být implementována, aby bylo možné vrátit zpět zpracování v OnPausesouboru .

Pokud CanPauseAndContinue ano false, SCM nepředá žádosti Pause nebo Continue do služby, takže metody a OnContinue nebudou OnPause volána ani v případě implementace. V SCM jsou ovládací prvky a Continue ovládací prvky zakázány, Pause pokud CanPauseAndContinue je false.

Platí pro

Viz také