私のシステムでプログラムが開くのにかかる時間を測定したいと思います。 Atomと一緒にこのユーティリティを試しましたが、time
Atomが開く前に端末に応答が印刷されます。 2〜3秒後に画面にAtomが開きました。
$ time atom
real 0m0.021s
user 0m0.021s
sys 0m0.003s
GUIが開き、ユーザー入力を準備するのにかかる時間を測定する方法についてのアイデアはありますか?
修正する:
以下のユーティリティを使用すると、xdotool
次の結果が得られます。
$ atom && time while true; do xdotool search --limit 1 --name "Project — Atom" >/dev/null && break; done
real 0m0.021s
user 0m0.009s
sys 0m0.005s
答え1
人々がこのようなことをするためにストップウォッチを使用したり、「完了」したときにいくつかのトリガーを出力するようにアプリケーションを変更したりする理由があります。
問題は「オープン」とは何ですか?ウィンドウはいつ表示されますか?アプリケーションが初期化された後?アイドル後?他にはありませんか?
同様の方法でウィンドウを検出できます。
$ atom
$ time while true; do xdotool search --limit 1 --name atom >/dev/null && break; done
--nameフィールドの「atom」を実際のウィンドウのタイトル名(正規表現)に置き換えます。ヘッダーAtomが何を使用しているのかわかりません。これはスキャン時に多くのCPUを使用でき、Waylandでは機能しません。
imagemagickで最終状態を見つけること(上記のxdotoolで使用するWIDを取得する)などの画面キャプチャを追加できますが、import
egads ...開始時間が本当に長い場合は問題ありません。