【发布时间】:2021-03-12 19:19:55
【问题描述】:
我正在尝试使用 Android Studio 的分析器工具之一来调试我的应用程序。
我正试图准确地找到我的 CameraActivity 的主线程在跟踪文件中的位置。
我正在使用 perfetto UI 以将跟踪作为网页打开。 请看附图。
我发现我可以缩小到我的包裹。但是我试图找到实际的主线程。特别是它可能导致内存泄漏的处理程序。
为了获取进程Id和线程Id,我把这个Log.d调用放在了Handler的handleMessage方法里面。
Log.d("iinnside_","see: " + yes.getLooper().getThread().getId() + " string: "+
yes.getLooper().getThread().toString());
这个 Log.d 调用给了我结果:
20815-20815 D/iinnside_:参见:2 字符串:Thread[main,5,main]
据我了解,根据我的日志配置输出数字:20815-20815 代表我需要的过程和Id。但是我无法通过 perfetto UI 显示找到它们。除了, 根据上面的 Log.d 调用,主线程的 id = 2。
在软件工程中,必须为应用程序的主线程分配一个公用编号。 最常用的数字是什么?
如何理解我的应用线程上的这些进程 ID?
【问题讨论】:
标签: android android-studio testing android-profiler