我用 C++ 编写了一个线程安全(至少目标是这样)的容器类。我在访问成员时锁定互斥量并在完成时释放。 现在,我尝试编写一个测试用例,如果它真的是线程安全的。 比方说,我有 Container 容器和两个线程 Thread1 Thread2。
Container container;
Thread1()
{
//Add N items to the container
}
Thread2()
{
//Add N items to the container
}
这样,N=1000 就没问题了。
但我不确定这个回归测试是否足够。有确定性的方法来测试这样的类吗?
谢谢。
最佳答案
没有真正的方法来编写测试来证明它的安全。
您只能将其设计为安全并测试您的设计是否已实现。您能做的最好的事情就是对其进行压力测试。
关于c++ - 如何编写确保线程安全的测试用例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3254608/