加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 如何为多线程应用程序创建测试环境

发布时间:2020-12-14 05:49:03 所属栏目:Java 来源:网络整理
导读:所有, 最近我开发了一个代码,据说是一个线程安全的类.现在我说’所谓’的原因是因为即使在使用sync’ed块,不可变数据结构和并发类之后,由于JVM的线程调度环境,我无法在某些情况下测试代码.即我只在纸上有测试用例,但无法复制相同的测试环境.是否有任何具体的
所有,

最近我开发了一个代码,据说是一个线程安全的类.现在我说’所谓’的原因是因为即使在使用sync’ed块,不可变数据结构和并发类之后,由于JVM的线程调度环境,我无法在某些情况下测试代码.即我只在纸上有测试用例,但无法复制相同的测试环境.是否有任何具体的指导或有经验的成员在这里可以分享如何测试多线程环境.

解决方法

首先,你不能确保只测试你的类是完全线程安全的.无论您运行什么测试,您仍然需要尽可能多的经验丰富的眼睛审查您的代码,以检测细微的并发问题.

也就是说,您可以设计特定的测试场景,尝试覆盖所有可能的线程间时序场景,就像您所做的那样.对于这方面的想法(以及一般的设计线程安全类),建议阅读Java Concurrency in Practice.

此外,您可以运行压力测试,在较长时间内同时执行多个线程.线程数应该超过合理的限制,以确保经常发生线程争用 – 这会增加潜在的并发错误随着时间的推移而出现的可能性.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读