web-dev-qa-db-ja.com

Windowsのスケジュールされたタスクは、コンピューターがスケジュールされた時間にオフになっていた場合に実行されますか?

たとえば、今から2分後にWindowsタスクスケジューラを使用してタスクをスケジュールし、何らかの理由で今から1分後にコンピューターがシャットダウンされ、3分後に電源がオンになった場合、スケジュールされたタスクは引き続き実行されますか?

そうでない場合、この機能を模倣するにはどうすればよいですか?

私はさまざまなシステムコマンドを実行する必要があるJavaアプリケーションを書いており、オペレーティングシステムが実際にタスク実行フェーズを管理することを望んでいます。本当に必要なのは、オペレーティングシステムによってできるだけ早く実行するタスク。

16
Mark Elliot

いいえ、実行されません。 Vistaおよび7のタスクスケジューラは、欠落したインスタンスを実行するように構成できますが、XPはできません。以下のチェックボックスを参照してください。スケジュールされた開始が失敗した後、できるだけ早くタスクを実行します

ただし、3つすべてを設定して、コンピューターがスリープまたは休止状態の場合にコンピューターをスリープ解除することができます。

enter image description here

21
afrazier

WindowsのIm 10.タスクのプロパティの下で...Conditionsタブをクリックします。

[電源...]の下で、チェックを実行して、このタスクを実行します

enter image description here

1
Chris Catignani

言われたように 、XPでこれを行うことはできませんが、Vista +ではできます。一部のプログラム(Acronis True Imageなど)は、独自のスケジューラを使用してシステムを克服します自分の限界。

XPでこれをエミュレートするには、システムの起動時に実行するようにスケジュールされたプログラム(グーグルで公開されている既存のプログラムをすぐに明らかにしなかった)を記述できます。

  • システムログで最後のシャットダウンと起動時間(または、スケジューラサービスのシャットダウンと起動時間)を確認します。
  • それに対してタスクスケジュールをチェックする
  • インターバルに入る開始瞬間があるものを実行します

警告:

  • 対応するスケジューラの機能を何らかの方法で呼び出すことができない場合を除き、スケジュールを手動で解析して、過去の特定の瞬間から次の計画開始時刻を計算する必要があります
  • xPのタスクには「できるだけ早く実行する」フラグはありません。代わりのものを発明する(またはすべてを無差別に取得する)必要があります。
  • タスクはシステム起動時に実行されるため、まだ初期化されていない機能が必要な場合、一部のタスクが失敗する可能性があります
0
ivan_pozdeev