【发布时间】:2021-12-01 20:09:04
【问题描述】:
我正在使用带有 Catch2 的 ThreadSanitizer。不幸的是,ThreadSanitizer 在我的代码中发现了带有 Catch2 和线程竞争条件的线程泄漏。有什么方法可以禁用 ThreadSanitizer 的线程泄漏检测但继续进行竞争条件测试?
【问题讨论】:
-
你的线程是分离的吗?我发现它报告分离的线程泄漏。
我正在使用带有 Catch2 的 ThreadSanitizer。不幸的是,ThreadSanitizer 在我的代码中发现了带有 Catch2 和线程竞争条件的线程泄漏。有什么方法可以禁用 ThreadSanitizer 的线程泄漏检测但继续进行竞争条件测试?
【问题讨论】:
事实证明,正确的做法是修复错误。我正在创建线程而不是加入它们或删除 std::thread 对象。
【讨论】: