![]() |
1
3
手臂上的pthreads从来没有问题,我怀疑您的代码中存在种族或初始化问题。尽量将代码减少到最少,以重现问题。 您应该在这里发布这个代码,或者您认为相关的部分。 别忘了,通常, select isn't broken 您使用的是linuxthreads还是nptl(“内核”线程?) 如果您正在使用后者,您也可以尝试删除您的应用程序。 |
![]() |
2
1
您可以看到的一个想法是旋转计数值。这在ARM上肯定不同于Intel系统。 您可以尝试使用“pthread_mutex_try lock()”,然后执行显式的“sched_yield()”,如果它不能获取锁,那么可以在循环中添加毫秒睡眠。通过这种方法,您可以中断锁操作,并查看锁上是否存在争用。 我敢打赌,您需要查看源代码,或者至少查看反汇编的“pthread-mutex-lock”来修复它。 |
![]() |
3
0
您确定要按照您认为的方式初始化互斥体吗?这是在文件范围变量中还是在分配中?我在想,由于内存初始化绘制的运气,gdb最终会在互斥体上为您提供一组不同的选项。 |
![]() |
MaPo · Linux,设置锁定ICMP_过滤器选项 6 月前 |
![]() |
user2138149 · 双栈网络服务器无法按预期处理ipv4请求 6 月前 |
![]() |
Marco · PyCharm Linux系统文件上os.stat异常 7 月前 |