为了用一种特定的方法发现性能猪,我经常做这样的事情:
// Some line of code
LogTimeInterval();
// Some other line of code
LogTimeInterval();
// Some other line of code
LogTimeInterval();
其中
LogTimeInterval
定义为:void LogTimeInterval()
{
static NSDate *_previousDate;
static NSInteger _counter = 0;
NSDate *date = [NSDate date];
if (!_previousDate) {
_previousDate = date;
}
NSLog(@"LINE %d: %f", _counter++, [_previousDate timeIntervalSinceDate:date]);
_previousDate = date;
}
这使我可以发现哪些代码行花费的时间超出了必要。但是,它需要修改代码,并且在存在分支逻辑时可能会很麻烦。
是否有最有效的方法对特定方法进行这种微观分析?
最佳答案
尝试使用XCode的内置Profiler。在它拥有的工具中,有一个时间分析器。选中此link for a nice tutorial on how to use it