misc.log

日常茶飯事とお仕事と

Windows 11で長時間放置するとスリープモードになってしまう

タイトルの通り、動画のエンコードなどで夜中にパソコンを稼働し続けたりしても、朝になったらスリープになっているという現象が発生。これを解消したくて調べた際の記録です。

結論:犯人は「電源オプション」の「次の時間が経過後休止状態にする」でした

試行錯誤も含めていて長いので結論を先に書きます。電源プランの編集から表示できる「電源オプション」設定の、「スリープ」項目にある「次の時間が経過後休止状態にする」が恐らく犯人でした。これが121分になっていたため、2時間放置すると勝手にスリープではなく「休止」になっていたようです。

電源オプション画面の様子

以下、ここに至るまでの経緯記録です。

システム無人スリープタイムアウトの設定を表示させる

タイトルにあるとおり「長時間放置でスリープ」の問題にまさに答えているタイトルのブログ?がありました。こちらです。

zenn.dev

内容は、標準状態だと非表示になっている電源設定を表示させて、追加の設定と行うというもの。
ちなみに、私が使っているWindows11の電源設定は下図の通り、時間経過によるスリープへの移行は「なし」に設定していました。

システム→電源の設定

また、上記サイトにある、PowerCfgコマンドでの設定確認は、下記のようになっていました。スタンバイ(S0)は利用出来ないようです。

管理者モードのコマンドプロンプトからPowerCfgコマンド実行

で、システム無人スリープタイムアウトの設定を表示させるには、レジストリエディタを開き、キー「 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Power\PowerSettings\238C9FA8-0AAD-41ED-83F4-97BE242C8F20\7bc4a2f9-d8fc-4469-b07b-33eb785aaca0 」のAttributes値を「1→2」に書き換えます。しかし、最初にある「システム→電源」の設定画面には特に変化無し。どうやら、この設定は別の電源設定画面に項目を増やすものだったようです。そちらを確認してみます。

コントロールパネルの「電源プランの変更」を確認する

問題の設定項目は、コントロールパネルから「ハードウェアとサウンド」を選び、その先にある「電源プランの編集」にありました。

コントロールパネルからハードウェアとサウンドを選ぶ
電源オプションの「電源プランの編集」を選ぶ

電源プランの編集、を選ぶと、現在選択している電源設定の詳細な設定内容を編集することができます。この画面から、「詳細な電源設定の変更」を選択してください。

詳細な電源設定の変更、を選択する

こちらに、「システム無人スリープタイムアウト」という設定が増えています。これがレジストリを変更して追加された項目ですね。しかし……

電源オプションに「システム無人スリープタイムアウト」が表示されている

しかし、この項目にマウスを合わせると表示されるツールチップメッセージにはこう書かれています。「システムが、スリープ状態を無人で解除した後、低電力スリープ状態に戻る前のアイドルタイムアウトです。」……ちょっとよく分かりませんが、スリープ状態が無人で解除されてしまった際に、その後さらに放置されると2分でスリープに戻る、という意味でしょうか。これは、当初の目的である「夜間に動画のエンコードを走らせていたら勝手にスリープになった」とはちょっと違いますね。さらに設定項目を見てみましょう。

「次の時間が経過後休止状態にする」……だと?

電源オプションのスリープ項目、もう1つの設定にこのようなものがありました。「次の時間が経過後休止状態にする」。そして、それは121分となっています。もしかして、夜中に勝手に「スリープになった」と思っていたのは、実はこの設定でスリープではなく「休止」になっていたのではないでしょうか。同じようにマウスを合わせて説明文を見るとこうなっています。「コンピューターが休止状態になるまでの、非アクティブである時間の長さを指定します。」。これですね。

非アクティブによる休止への移行設定

ここで、スリープと休止の違いを簡単に説明しておきます。どちらも「作業中の状態を保持したまま、シャットダウンではない停止状態になる」という挙動です。しかし、スリープが「作業中状態をメモリーに保存し、電源はONのまま低電力稼働する」という動きなのに対し、休止は「作業中状態をハードディスク等に保存し、電源をOFFにする」という動き。要するにスリープは「動いている」、休止は「停止している」という違いがあります。なので、作業再開時の立ち上がり時間が違います。

夜中に勝手にスリープになったと思っていたのですが、確かに立ち上がり時、電源ONの時のようなマザーボードメーカーのロゴ表示などが行われていました。おかしいな、とは思っていたのですが、あれはスリープではなく休止していたからなんですね。

というわけで、この設定は121分→0分に変更し、夜中でも電源ONならそのまま動き続けるように設定します。このエコが流行る時代に逆行しますが、やりたい作業が勝手に止まって終わらないのは困りますので……。