性能分析是指观察和记录有关应用程序行为的度量的过程。常见的性能问题源于运行速度慢或低效的代码,或者导致内存浪费的代码。
大多数性能分析工具都可以归为:
采样式:采样式性能分析器通过获取运行应用程序的周期性快照(称为采样),记录每个时间间隔内的应用程序运行状态,包括正在执行的代码行。通常情况下,不会修改被测系统代码,而倾向于采用外部透视方法。
插装式:采用侵入式方案。
两者的主要区别在于,采样式分析器在运行任何代码时都会检查应用程序,包括对外部库的调用。而插装式分析器则只从插装代码收集数据。
Visual Studio的性能分析工具对托管和非托管应用程序均适用,但对象分配跟踪功能只对托管代码有效。
使用Visual Studio对应用程序进行性能分析主要有4个步骤:
创建性能会话,选择性能分析方法(CPU采样、插装、内存采样或并发)及其目标
使用Performance Explorer浏览和设置会话属性
发起会话,执行应用程序和性能分析器
审查性能报告中收集的数据。
创建实例应用程序:
1. 创建WidgetClass.cs文件,代码如下:
1 namespace DemoConsole 2 { 3 public class WidgetClass 4 { 5 private string _name; 6 public string Name 7 { 8 get { return _name; } 9 set { _name = value; } 10 } 11 12 private int _id; 13 public int Id 14 { 15 get { return _id; } 16 set { _id = value; } 17 } 18 public WidgetClass(int id, string name) 19 { 20 _id = id; 21 _name = name; 22 } 23 } 24 }