Vit*_*nko 5 c# multithreading thread-safety
我有一个类,它使用字符串字典.一种方法是初始化字典,另一种方法是将新对添加到字典中,第三种方法是将字典连接成字符串.
我想通过在不同的线程中同时运行init-adding-adding- * -adding-finalizing方法来对它的线程安全进行单元测试.在使用之前创建了类的新实例,字典不是静态的.所以我想知道,如果它安全的话.
Afaik,在单元测试中测试线程并不是一个好主意.相反,我找到了一个CHESS,其设计目的完全相同:http://blog.decarufel.net/2009/05/how-to-test-your-multi-threaded-code.html
然而,看起来它已经过时了.关于这个领域的任何现代替代/建议?
作为替代方案,您可以考虑使用ConcurrentDictionary类型,它可以抽象出这些特定的多线程问题。
然而,如果您想继续使用自己的机制(或者如果您想要如何测试多线程代码的问题的一般答案),从这篇文章中可以看出CHESS 绝不是过时的。据我所知,自该工具首次发布以来,底层技术 - 多线程 - 没有发生任何变化,因此除非您在使用它时遇到特定问题,否则继续使用是完全合理的。
| 归档时间: |
|
| 查看次数: |
264 次 |
| 最近记录: |