【发布时间】:2009-05-04 15:29:22
【问题描述】:
我想跟踪 c# 移动应用程序内部的性能,以便了解一些长时间运行的方法所需的时间量。目标是了解方法级别的性能。这种跟踪将在运行时决定。
出现的第一个想法是维护一个全局变量“doWeHaveToTrace”,每次调用潜在可跟踪方法时检查它,如果该变量为真,则跟踪它。在这种情况下,我可能会使用 Logger 或 TraceListener 将跟踪信息写入文件。
但是我觉得这个机制很重,因为每个方法都要检查一个变量,而且记录器调用也要编码。
我也考虑过方面编程(在before() 和after() 方法中插入跟踪代码),但我认为在这个项目中不能允许方面编程。
所以我想知道,有没有其他好的机制可以提供这样的性能跟踪?是否可以跟踪整个方法?并决定在运行时停止或恢复跟踪?
【问题讨论】:
标签: c# performance logging mobile trace