Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我有一个具有多线程的客户端服务器应用程序。服务器端失败,std::list 损坏导致 SEGV。我怀疑存在某种跨线程计时问题,两个线程同时更新 std::list 并导致其损坏。
请建议免费工具来追踪这一点或可能有帮助的策略。
如果您知道由于并发访问而损坏的共享数据结构,则在数据结构上放置一个互斥锁,以便一次只能访问一个线程,然后再试一次。
您需要确保并发线程不能更新任何共享数据。多线程读取是可以的,您需要注意多线程读取和一个或多个写入。
你能指定你使用的操作系统和编译器吗?