java - java并发的潜在瓶颈

标签 java concurrency

我致力于实现一个推理器,一个复杂的东西。我尝试通过使用并行线程来提高性能,但只增加了开销。

我的问题是除了监视器()之外是否还有其他潜在瓶颈。我从程序中删除了所有此类指标,例如 synchronizedvolatile

我使用java.util.concurrent实用程序,并将数据拆分为线程的独立数组。

最佳答案

您可以做的最有用的想法是确保您的线程正在执行长序列的独立工作。这些序列需要明显长于您可能产生的开销(例如 1 - 10 微秒)

一个常见的错误是将工作分解得太细(在此过程中产生大量开销)。每个核心只需要一项任务即可让每个核心保持忙碌。

如果没有关于您想要做什么以及如何分解工作的大部分详细信息,很难提出更具体的建议。

关于java - java并发的潜在瓶颈,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9281845/

相关文章:

android - 线程并发 wait() 其他线程完成并继续其工作

java - 在这种情况下如何处理并发?

java - 将复选框状态从 XML 传递到 Java

java - 如何在 Eclipse Juno 中以编程方式分离编辑器?

java - 如果目录以点开头,File.getCanonicalPath() 返回错误

java - 扩展 Lucene 分析器

java - Google Protobuf 格式错误 : input ended unexpectedly in the middle of a field

java - 覆盖 ThreadPoolExecutor 中的 execute()

swift - iOS swift 操作队列

ruby - 如何设计和构建使用Actor的程序