サンプル: 一時停止可能タイマー ジョブ
最終更新日: 2011年4月20日
適用対象: SharePoint Server 2010
C:\Program Files\Microsoft SDKs\SharePoint 2010\Samples フォルダーにある PausableAtCustomTimerJobScope.zip ファイルのサンプル タイマー ジョブでは、リスト レベルよりも細かく、アイテム レベルよりも粗いカスタム レベルでタイマー ジョブを一時停止または再開することをサポートしています。
サンプルでは、サイト コレクション レベルでの一時停止または再開をサポートしている SPAllSitesJobDefinition オブジェクトを示しています。ただし、タイマー ジョブが 1 つのサイト コレクションを処理するのに長い時間 (たとえば、数時間) かかる可能性がある場合、ファーム管理者は毎晩数時間だけジョブを実行できるように設定している可能性があるので、そのタイマー ジョブは完了しない可能性があります。
サンプルのビルドと実行
開発サイトあるいはテスト サイトで、このプロジェクトをテストします。
サンプルのビルド
Microsoft Visual Studio 2010 で、PausableAtCustomScope.sln ファイルを開きます。
%PROGRAMFILES%\Common Files\Microsoft Shared\web server extensions\14\ISAPI フォルダーで、Microsoft.Office.Server.dll と Microsoft.SharePoint.dll への参照を解決します。
ソリューションをビルドします。
サンプルの実行
サンプルを実行するには
gacutil PausableAtCustomScopeTimerJob.dll を実行して、ビルドしたアセンブリをグローバル アセンブリ キャッシュ (GAC) に登録します。
Microsoft SharePoint Server 2010 のコマンド プロンプトから RegisterJob.ps1 を実行し、Web アプリケーションの URL を唯一の引数として渡します。
[サーバーの全体管理] に移動し、[監視] をポイントして [ジョブ定義の確認] を選択し、[Sample Pausable At Custom Scope Timer Job] を選択し、[今すぐ実行] をクリックします。
実行中のジョブを一時停止するには
ジョブが実行されているコンピューターでコマンド プロンプトから net pause sptimerv4 を実行します。または、ジョブ定義を無効にするには、[サーバーの全体管理] に移動し、[監視] をポイントして [ジョブ定義の確認] を選択し、[Sample Pausable At Custom Scope Timer Job] を選択し、[無効] をクリックします。
ジョブ変更の状態が表示されるまで最大 15 秒の遅れがあります。
一時停止したジョブを再開するには
タイマー サービスが一時停止しているコンピューターでコマンド プロンプトから net continue sptimerv4 を実行します。
[サーバーの全体管理] に移動します。ジョブ定義を有効にするには、[監視] をポイントして [ジョブ定義の確認] を選択し、[Sample Pausable At Custom Scope Timer Job] を選択し、[有効] をクリックします。
ジョブ変更の状態が表示されるまで最大 15 秒の遅れがあります。
関連項目
参照
[T:]