3

我从外部开发人员那里收到了一个定义良好的 API(C++ 和 Java)形式的库。可以进行哪些测试来检查库是否是线程安全的?

4

1 回答 1

3

基本上你不能,测试线程安全或多或少是不可能的。

而且,如果您没有作者保证该库是线程安全的,那么他们将不会修复线程问题,因此未来的版本可能会降低线程安全性。

如果您有源代码,那么您可以调查常见的线程安全问题:共享状态、锁等。但是如果您只有二进制文件,那么您最好的希望就是证明该库不是线程-安全的。即使这样,可靠地重现问题也可能非常困难。

于 2009-11-01T10:28:53.967 回答