APK が epoll_wait で sig_stop を受信しています。これを呼び出しているコードの部分を把握できません。これが libc の一部であることはわかっています。この epoll_wait の行番号がわかります。ツール addr2line を試してみたところ、うまくいきませんでした。
./toolchains/arm-linux-androideabi-4.4.3/prebuilt/linux-x86/bin/arm-linux-androideabi- addr2line -C -f -e ~/SoxPlayer/obj/local/armeabi/libc.so 0xafd0c75c
??
??:0
これは私が得たものです..コードのどの部分が epoll_wait を呼び出すスレッド 1 をフォークしているのか知りたいです。
Thread [1] (Suspended: Signal 'SIGSTOP' received. Description: Stopped (signal).)
3 epoll_wait() 0xafd0c75c
2 <symbol is not available> 0xa8125706
1 <symbol is not available> 0xa8125706
ここにはあまり情報がありません。gdb も同じ情報を提供します。ndk-stack ツールは、そのようなツールに必要な sigev 障害やアプリ クラッシュのようなものがないため、役に立ちません。私の apk は、私のコードで signal , event を待っています。しかし、私のコードで誰が epoll_wait を呼び出しているかを知るために、どのツールを使用できますか? コードで何が起こっているかを確認できますが、この epoll_wait が呼び出される場所を正確に特定することはできません。これを理解するために使用できるツールについてアドバイスが必要です。
ありがとう