Pause

提供: AutoHotkey Wiki
移動: 案内検索

実行制御 | GUI表示 | 演算・変数 | メモリ・DLL操作 | 文字列操作 | キーボード | マウス | シェル | ウィンドウ | ウィンドウグループ
ステータスバー | コントロール | サウンド | ファイル | INIファイル | レジストリ | 環境変数 | AutoHotkey | その他 | 設定関係 | オブジェクト

Pause[編集]

実行中のスレッドを一時停止する。

Pause [, Mode ,OperateOnUnderlyingThread?]

Parameters[編集]

引数名 説明
Mode 以下のどれかを指定。省略時は Toggle
Toggle 停止スレッドがあれば再開、なければ停止。
On スレッドを停止する。
Off 一番最近停止したスレッドを再開する。
OperateOnUnderlyingThread? 以下のどれかを指定。省略時は 0
Modeが Offまたは Toggleでスレッドが再開されていなければこの設定は無効。
0 現在のスレッドを一時停止する。
1 現在のスレッドではなく、現在のスレッドに割り込まれていたスレッドを停止する。
この場合、本コマンド実行後、スレッドの残りの部分が実行され、スレッドが終了して割り込まれていたスレッドに実行が戻った時点で実行が停止する。
なお、現在のスレッドがほかのスレッドに割り込んだものでない場合、スクリプト本体が停止し、タイマーが実行されなくなる。

A_IsPausedには基礎となるスレッドの一時停止状態が格納される。

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