检查库/API是否线程安全的通用方法

3

我收到了一份由外部开发者提供的库,它是一个定义良好的API(使用C++和Java编写)。有哪些测试可以检查这个库是否支持多线程?

1个回答

3
基本上你是做不到的,测试线程安全几乎是不可能的。
此外,如果你没有作者保证库是线程安全的,那么他们也不会修复线程问题,因此未来版本可能会更少的线程安全。
如果你有源代码,那么你可以调查常见的线程安全问题:共享状态、锁等。但如果你只有二进制文件,那么你最好的希望就是证明该库不是线程安全的。即使如此,可靠地重现这些问题可能非常困难。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接