java - 是否有旨在调试并发软件的 JVM?

标签 java multithreading debugging jvm concurrency

我使用了 Concurrent Pascal,这是一种有助于调试并发算法的工具,因为当它运行您的代码时,它会随机化在每个可能的步骤中切换到哪个线程,并尝试尽可能多的路径。

是否有 JVM 可以做到这一点?

最佳答案

看看 Java Pathfinder (尽管如此,来自 NASA——而且它是免费的)。我认为它应该几乎开箱即用地满足您的需求,即尝试不同的交错(可能需要一些组装)。

当然,您仍然需要在您感兴趣的数据上指定验证属性,例如不变量。否则,默认情况下它可能只会告诉您是否存在死锁。查看“探索执行替代方案”部分。

关于java - 是否有旨在调试并发软件的 JVM?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2762922/

相关文章:

Javascript:找不到幻灯片上的错误

java - 处理中每个对象的 mouseEventListener

java - 迭代 Collection,避免在循环中删除对象时出现 ConcurrentModificationException

multithreading - 为什么我的程序用一个核心而不是两个核心更快?

xcode - 从控制台应用程序查看信息和调试日志

perl - WWW::Mechanize::Firefox 运行良好:一些尝试使脚本更健壮

java - 可以使用 CDI 创建 mvvmFX 对象(View、ViewModel、Model)吗?

java - 自动构建 Java RCP 以使用 JNLP 进行部署

c++ - QThreadPool & QRunnable & 静态函数

c# - 了解多线程 C#