Android systrace ロギング システムは素晴らしいものですが、コードの Java 部分でしか機能しませTrace.beginSection()
んTrace.endSection()
。コードの C/C++ NDK (ネイティブ) 部分では、JNI を介してのみ使用できます。これは、Java 環境のないスレッドでは遅いか使用できません...
イベントをメインの systrace トレース バッファに追加したり、ネイティブ C コードから別のログを生成したりする方法はありますか?
この古い質問では、Android の systrace が使用する内部システムとして atrace/ftrace について言及しています。これは(簡単に)利用できますか?
おまけ: トレース コールはパフォーマンスが重要なセクションにあることが多いため、実際のイベント時間の後にコールを実行できることが理想的です。つまり、呼び出し自体をポーリングするのではなく、ログに記録する時間を指定できるようにしたいと考えています。しかし、それはケーキのアイシングにすぎません。