ServiceBase.RequestAdditionalTime メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > ServiceBase.RequestAdditionalTime メソッドの意味・解説 

ServiceBase.RequestAdditionalTime メソッド

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

保留中の操作について時間延長要求します

名前空間: System.ServiceProcess
アセンブリ: System.ServiceProcess (system.serviceprocess.dll 内)
構文構文

<ComVisibleAttribute(False)> _
Public Sub RequestAdditionalTime ( _
    milliseconds As Integer _
)
Dim instance As ServiceBase
Dim milliseconds As Integer

instance.RequestAdditionalTime(milliseconds)
[ComVisibleAttribute(false)] 
public void RequestAdditionalTime (
    int milliseconds
)
[ComVisibleAttribute(false)] 
public:
void RequestAdditionalTime (
    int milliseconds
)
/** @attribute ComVisibleAttribute(false) */ 
public void RequestAdditionalTime (
    int milliseconds
)
ComVisibleAttribute(false) 
public function RequestAdditionalTime (
    milliseconds : int
)

パラメータ

milliseconds

要求する時間 (ミリ秒単位)。

例外例外
例外種類条件

InvalidOperationException

サービス保留状態ではありません。

解説解説

RequestAdditionalTime メソッドオーバーライドされた OnContinue、OnPause、OnStart、または OnStop メソッドから呼び出され保留中の操作延長時間要求してサービス コントロール マネージャ (SCM) がサービス応答なしのマーク付けないようにします。保留中の操作ContinuePauseStart、または Stop のいずれでもない場合は、InvalidOperationExceptionスローさます。

使用例使用例

ServiceBase から派生したクラスRequestAdditionalTime メソッド使用するコード例次に示します。このコード例は、ServiceBase クラストピック取り上げているコード例一部分です。

    ' Stop this service.
    Protected Overrides Sub
 OnStop()
        ' New in .NET Framework version 2.0.
        Me.RequestAdditionalTime(4000)
        ' Signal the worker thread to exit.
        If Not (workerThread Is
 Nothing) AndAlso workerThread.IsAlive Then
#If LOGEVENTS Then
            System.Diagnostics.EventLog.WriteEntry("SimpleService.OnStop",
 DateTime.Now.ToLongTimeString() + _
                " - Stopping the service worker thread.")
#End If
            pause.Reset()
            Thread.Sleep(5000)

            workerThread.Abort()
        End If
        If Not (workerThread Is
 Nothing) Then
#If LOGEVENTS Then
            System.Diagnostics.EventLog.WriteEntry("SimpleService.OnStop",
 DateTime.Now.ToLongTimeString() + _
                " - OnStop Worker thread state = "
 + workerThread.ThreadState.ToString())
#End If
        End If
        ' Indicate a successful exit.
        Me.ExitCode = 0

    End Sub 'OnStop

        // Stop this service.
        protected override void OnStop()
        {
            // New in .NET Framework version 2.0.
            this.RequestAdditionalTime(4000);
            // Signal the worker thread to exit.
            if ((workerThread != null) &&
 (workerThread.IsAlive))
            {
#if LOGEVENTS
                EventLog.WriteEntry("SimpleService.OnStop", DateTime.Now.ToLongTimeString()
 +
                    " - Stopping the service worker thread.");
#endif
                pause.Reset();
                Thread.Sleep(5000);
                workerThread.Abort();

            }
            if (workerThread != null)
            {
#if LOGEVENTS
                EventLog.WriteEntry("SimpleService.OnStop", DateTime.Now.ToLongTimeString()
 +
                    " - OnStop Worker thread state = " +
                    workerThread.ThreadState.ToString());
#endif
            }
            // Indicate a successful exit.
            this.ExitCode = 0;
        }
    // Stop this service.
protected:
    virtual void OnStop() override
    {
        // Signal the worker thread to exit.
        if ( (workerThread != nullptr) && (workerThread->IsAlive)
 )
        {
            Trace::WriteLine( DateTime::Now.ToLongTimeString() + " - Stopping
 the service worker thread.", "OnStop" );
            workerThread->Abort();

            // Wait up to 500 milliseconds for the thread to terminate.
            workerThread->Join( 500 );
        }

        if ( workerThread != nullptr )
        {
            Trace::WriteLine( DateTime::Now.ToLongTimeString() + " - Worker
 thread state = " + workerThread->ThreadState.ToString(), "OnStop"
 );
        }
    }
.NET Framework のセキュリティ.NET Frameworkセキュリティ
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照
関連項目
ServiceBase クラス
ServiceBase メンバ
System.ServiceProcess 名前空間
OnContinue
OnPause
OnStart
OnStop



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

ServiceBase.RequestAdditionalTime メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



ServiceBase.RequestAdditionalTime メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2024 Microsoft.All rights reserved.

©2024 GRAS Group, Inc.RSS