1

ばかげた質問で申し訳ありません。私はXperfを初めて使用します。

私は 64 ビットの Windows 8.1 を使用しており、アプリケーションも x64 です。Xperf を使用して、アプリケーション内のコールスタックと定義済みイベントの両方をキャプチャしたいと考えています。

35f7872e-9b6d-4a9b-a674-66f1edd66d5cアプリケーションに GUID を登録しました。

私が使用していたとき:

xperf -on PROC_THREAD+LOADER+Base -start UserSession -on 35f7872e-9b6d-4a9b-a674-66f1edd66d5c -BufferSize 1024 -stackwalk profile

すべてのイベントを取得できますが、コールスタックは取得できません。ただし、削除する-on 35f7872e-9b6d-4a9b-a674-66f1edd66d5c とコマンドラインは次のようになります。

xperf -on PROC_THREAD+LOADER+Base -start UserSession -BufferSize 1024 -stackwalk profile

このようにして、すべてのコールスタックをキャプチャできますが、定義されたイベントはキャプチャできません。

コールスタックとイベントの両方をキャプチャするために使用する正しいコマンド ラインを誰か教えてもらえますか? また、良い Xperf リファレンスを教えていただければ、さらに役に立ちます。

4

2 に答える 2

1

:::'stack'ユーザー モード イベントのスタックをキャプチャするには、コマンド ラインに追加する必要があります。

xperf -start UserSession -on 35f7872e-9b6d-4a9b-a674-66f1edd66d5c:::'stack'

xperf の優れた参考資料は、書籍「Inside Windows Debugging」このブログです。

于 2014-09-11T19:51:36.023 に答える