スクリプトを再起動する (os.restart)
宣言
操作の成否, エラー情報 = os.restart([ スクリプトファイルのパス ])
パラメータ
- スクリプトファイルのパス
文字列型の省略可能なパラメータです。有効なスクリプトファイルのパスを指定すると、対象のスクリプトファイルを使用して再起動します。デフォルトは""です
戻り値
- 操作の成否
ブール型です。操作に失敗した場合は false を返します。失敗する可能性があるのは 脚本文件路径 パラメータを指定した場合のみです。操作に成功するとプロセスが再起動するため、この関数は呼び出し元に戻りません - エラー情報
文字列型です。操作に失敗した場合は、具体的なエラーメッセージを返します
説明
脚本文件路径 を指定しない場合、この関数は 現在のスクリプト プロセスを直接再起動し、現在のスクリプトは直ちに終了します
有効な 脚本文件路径 を指定した場合、現在のスクリプトを終了し、対象のスクリプトファイル を使用して再起動します
操作に失敗した場合、この関数は false とエラーメッセージを返します。通常は不正な引数が原因です
注意事項
現在のスクリプト とは、起動時に読み込まれたスクリプトを指します。スクリプトファイルが変更されても、
os.restart()は変更後のファイルを 読み込みません
必要がない限り、この関数をマルチスレッド環境で使用しないでください
遅延を設けずに再起動すると、ほかの処理に問題が生じる可能性があります。スクリプト作成者側で回避してください
例 1
os.restart() -- 「現在のスクリプト」を再起動する(「現在のスクリプトファイル」ではない)
例 2
os.restart(utils.launch_args().path) -- 「現在のスクリプトファイル」を使用して再起動する
注:上記のコードでは、本章で扱っていない関数 utils.launch_args を使用しています