3

Androidアプリケーション(JNI + Java)がバックグラウンドに移行すると、Elixirモニターに基づくと、目に見える理由なしに40〜80%のCPUを使用します。Logcatには実際のアクティビティの表示はなく、DDMSメソッドプロファイラーはメソッド呼び出しを検出しません。

実際、数分後、OS(ISC)は少なくとも時々自動的に修正するように見えます。アプリケーションプロセスを再起動すると、期待どおりになります。CPUとメモリの0%を使用します。アプリを再度起動し、ホームキーを押してバックグラウンドに戻すと、同じCPUホギングが発生します。

何を調査できるか考えてみてください。

4

1 に答える 1

1

したがって、私の結論は次のとおりです。1.プロファイラーにメソッド呼び出しが表示されない場合は、おそらくCPUがNDK側で浪費されていることを意味します。2。GDBベースのプロファイリングを使用する必要があります。おそらくそのようなものです。

于 2013-01-18T10:39:34.430 に答える