Pause
実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 |
キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ
ステータスバー | コントロール | サウンド | ファイル | INIファイル |
レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト
Pause[編集]
実行中のスレッドを一時停止する。
Pause [, Mode ,OperateOnUnderlyingThread?]
Parameters[編集]
引数名 | 説明 | |
---|---|---|
Mode | 以下のどれかを指定。省略時は Toggle 。
| |
Toggle | 停止スレッドがあれば再開、なければ停止。 | |
On | スレッドを停止する。 | |
Off | 一番最近停止したスレッドを再開する。 | |
OperateOnUnderlyingThread? | 以下のどれかを指定。省略時は 0 。Modeが Off または Toggle でスレッドが再開されていなければこの設定は無効。
| |
0 | 現在のスレッドを一時停止する。 | |
1 | 現在のスレッドではなく、現在のスレッドに割り込まれていたスレッドを停止する。 この場合、本コマンド実行後、スレッドの残りの部分が実行され、スレッドが終了して割り込まれていたスレッドに実行が戻った時点で実行が停止する。 なお、現在のスレッドがほかのスレッドに割り込んだものでない場合、スクリプト本体が停止し、タイマーが実行されなくなる。 ※ |
Remarks[編集]
Suspend がホットキーやホットストリングも停止させてしまうのに対し、Pause
によって停止するのはカレントスレッド だけである。
Pauseを行うと、現在のスレッドの処理を停止する。現在のスレッドに割り込まれて停止していたスレッドもそのまま停止し続ける。
Pauseされた状態でも、新たにホットキーやメニューアイテムからスレッドを開始することは可能。
それらのスレッドから Pause,Off
を実行して処理を再開させる。
ただし、タイマーは停止し、タイマーに設定されたスレッドは実行されなくなる。
スクリプトの現在のスレッドがPauseされると、タスクトレイのアイコンの色が赤に変わる。
この動作は、 Menu,Tray,Icon,,,1
とすることで抑制できる。
タスクトレイのメニューから Pause Script
を行っても、Pauseすることができる。
なお、トレイメニューやメインウィンドウのメニューを表示している間スクリプトは停止するが、これはPauseとは別物である。
組み込み変数 A_IsPaused
で現在の状態が参照できる。一時停止されている場合は 1
それ以外の場合は 0
。
Related[編集]
Suspend, Menu, ExitApp, スレッド, SetTimer
Example(s)[編集]
Pause::Pause ;ホットキーに一時停止機能(切り替え)を割り当て
;別のスクリプトにPauseコマンドを送信します
DetectHiddenWindows, On
WM_COMMAND := 0x111
ID_FILE_PAUSE := 65403
PostMessage, WM_COMMAND, ID_FILE_PAUSE,,, C:\YourScript.ahk ahk_class AutoHotkey