5

通常のアンマネージ Visual C++ を使用してカスタム パフォーマンス カウンターを作成する方法を知っている人はいますか?

マネージ C++ を使用して簡単に実行できることはわかっていますが、アンマネージ Windows サービスを使用して実行する必要があります。

また、パフォーマンス カウンター データを取得できることもわかっていますが、いくつかのカスタム カウンターを作成し、アプリケーションの実行時にそれらをインクリメントする必要があります。

4

4 に答える 4

6

ここを参照してください: http://msdn.microsoft.com/en-us/library/aa371925.aspx

これはそれほど難しいことではありませんが、API は自己参照型の可変長構造を広範囲に使用し、監視対象のプロセスからデータを取得するために何らかの IPC メカニズムを使用する必要があるため、少し面倒です。

于 2008-09-11T06:09:49.550 に答える
3

ATL パフォーマンス モニター クラスは使用しないでください。それらは簡単に追加でき、ウィザードなどすべてを備えていることは知っていますが、どうしようもなくバグがあります。私はそれらを職場の開発アプリの 1 つに追加し、6 か月後にコードを調べて取り出さなければなりませんでした。全体として、約 3 週間の作業がそのノイズに失われました。

于 2008-09-11T08:41:17.813 に答える
1

もう少し簡単に実装できるものを探していました。私はおそらくこのアプローチを使用する必要があります。また、ATL クラスを使用してパフォーマンス カウンターを追加する方法を示すように変更された Scribble チュートリアルがあることを同僚 (PJ に感謝) から教えてもらいました: PerformanceScribble サンプル: MFC アプリケーションでのパフォーマンス監視

ここでの大きな欠点は、現在、私のアプリケーションが MFC または ATL を使用していないことであり、そのサポートを追加する必要があります。

于 2008-09-11T08:32:05.433 に答える