有没有一种好的方法(正确的方法或有效的方法)来调试慢速运行的代码?
我有一个运行多个循环然后递归的线程,我的代码运行速度非常慢。
有没有一种很好的方法来调试不同的循环或代码段以找出哪个运行速度最慢?
如果调试器已经这样做了,有人可以解释一下,
非常感谢
答案 0 :(得分:2)
您需要的不是调试器,而是分析器。从Android的SDK中查看此工具:traceview
答案 1 :(得分:1)
确定慢点的最原始方法之一是使用print语句丢弃代码。然后,瓶颈会显示为打印之间的延迟。这可以通过在从一个循环移动到另一个循环时打印系统时间来改进,从而使确定最慢循环变得微不足道。
使用性能分析器可能更容易,更彻底的解决方案。大多数主流语言都有内置性能分析的独立分析器或调试器。一个好的分析器将确定在代码的每个区域上花费的执行时间百分比,并提供有用的信息来优化性能瓶颈。
如果您需要更多具体信息,发布您正在使用的语言以及代码的相关部分会很有帮助。