如果我在我的device设备上运行,我可以看到,当我的应用程序是使用.6% cpu的后台时,如果我将它带到前台,它需要5-6%的cpu。问题是它什么都没做。没有运行服务,没有后台线程,它只是在等待用户单击一个按钮。
在adt中有没有一种方法,或者通过其他一些工具来找出哪个线程正在消耗cpu,这样我就可以知道从哪里开始寻找问题了吗?
发布于 2014-07-04 20:01:58
是的,甚至是免费的。它被称为DDMS,是Eclipse插件的一部分。

通过USB连接您的设备,开始您的应用程序,然后打开DDMS视图,您将能够快速找到您的CPU密集型线程。
请注意,为程序生成的线程提供人类可读的名称是一种很好的做法。您的用户永远不会使用这些名称,但它将使线程调试/分析变得更简单:
Thread.currentThread().setName("DB-Access-Thread");https://stackoverflow.com/questions/24580077
复制相似问题