安卓Eclipse调试模式-线程

4
在我的应用程序调试过程中,我突然有了一个问题。在Eclipse调试模式下,你有很多选项和值可供选择,但当我调试时,其中一个视图让我思考了一会儿。这张图片上的所有线程是什么意思?它们是正在运行的应用程序线程吗?它们是我启动/停止的线程,还是更像控制我的应用程序的系统级别的线程?拥有这么多线程是正常的吗?还是我做错了什么?
1个回答

5
这些都是驻留在您VM实例中的线程。在运行时,通常会同时运行或等待多个线程。每当生成任务或定时器时,将创建一个线程或从线程池中取出。在您的截图中,可能还可以看到许多空闲的线程池线程。 此外,请考虑UI编程-显示线程通常是一个独立的线程,在该线程上通过其他非UI线程调用事件,因为在UI线程上长时间运行的操作会导致整个应用程序停止响应。
编辑: 澄清一下,并不是所有这些线程都是由您有意地调用的。一些线程是由VM本身启动的,一些是由您可能正在使用的某些框架或库启动的,而另一些则是由您启动的-其中最突出的是通常所谓的“主”线程。
编辑2: 您还可以随时在调试视图中暂停给定线程并检查其当前堆栈跟踪。这可能会给您提供关于所有这些线程正在执行的信息。很有可能,它们正在等待对象(通过某个池分派程序)或轮询空阻塞队列或类似的内容。
祝好, h.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接