簡単なコンソール アプリを作成し、Run Command -> PerfMonTest.exe を介して PerfView から実行しました。
ログファイルを取得し、アプリのプロセスを確認します。予想どおり高価です (99% CPU ) が、高価なメソッドにドリルダウンしたい場合、それらは高価なメソッドのリストに表示されません。
それらを見えるようにするためにできることはありますか?
プロセスを選択したときのビューは次のとおりです。リストには CallExpensive と CallCheap が含まれていると思います。
メインメソッドを選択しても、呼び出されたメソッドをさらに掘り下げる機会がありません
アプリは次のとおりです。
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace PerfMonTest
{
class Program
{
static void Main(string[] args)
{
for (int i = 0; i <= 2000; i++)
{
CallExpensive(1000);
CallCheap(1000);
CallCheap(400);
}
}
public static void CallExpensive(int expense)
{
for (int i = 0; i <= expense; i++)
{
DateTime checkTime = DateTime.Now;
string val = "10" + i.ToString();
}
}
public static void CallCheap(int expense)
{
for (int i = 0; i <= expense; i++)
{
int j = 2;
}
}
}
}