如果有人对C++、多线程代码有经验,能对互斥问题有所了解,我将不胜感激。它运行在Red hat Linux 5.4上。我们正在调试不是我写的遗留代码。假设每秒进行非常高的调用,响应时间为3-5毫秒。我不喜欢这个应用程序的一个地方是到处使用智能指针(当SPtr超出范围时就会调用互斥锁)。写这篇文章的人似乎对SPtrs上瘾了。许多函数都将SPtr作为参数。应用程序可以正常运行几个小时,然后我们在锁的时候突然得到互斥EINVAL (返回代码22)。我见过核心转储,它显示了不同的堆栈跟踪,没有一个地方导致它。
你