Android NDK sem_wait报告100%cpu使用率
android Profiler显示我的一个本机线程使用100%cpu,但该线程仅在未发出信号的信号量上调用Android NDK sem_wait报告100%cpu使用率,android,android-ndk,semaphore,cpu-usage,Android,Android Ndk,Semaphore,Cpu Usage,android Profiler显示我的一个本机线程使用100%cpu,但该线程仅在未发出信号的信号量上调用sem\u wait: int rc; do { rc = sem_wait(&m_sema); } while (rc == -1 && errno == EINTR); 我在while条件上添加了一个断点,并在sem_wait之后添加了日志记录,可以确认对sem_wait的调用永远不会返回 这是针对调试构建的虚假CPU使用,还是此调用实际使用设备上的C
sem\u wait
:
int rc;
do {
rc = sem_wait(&m_sema);
} while (rc == -1 && errno == EINTR);
我在while条件上添加了一个断点,并在sem_wait
之后添加了日志记录,可以确认对sem_wait
的调用永远不会返回
这是针对调试构建的虚假CPU使用,还是此调用实际使用设备上的CPU周期
这个信号量是其中的一部分,除此之外似乎没有任何问题