当android应用程序(JNI + Java)进入后台时,基于Elixir监视器,它需要40-80%的CPU而没有任何明显的原因。 Logcat没有任何实际活动的迹象,DDMS方法分析器没有找到任何方法调用。
事实上,几分钟后OS(ISC)至少有时似乎会自动修复它:重启应用程序进程,然后就像预期的那样 - 占用0%的CPU和一些内存。当我再次启动应用程序并按回原点将其带到后台时,会发生相同的CPU占用。
有什么想法可以调查吗?
答案 0 :(得分:2)
所以我的结论是:1。如果方法调用没有在Profiler中显示,那很可能意味着CPU在NDK方面被浪费了,2。应该在那里使用基于GDB的分析,可能像{{3 }}