【问题标题】:What is the exact use of classes in java.util.concurrent.atomic package in Java?Java中java.util.concurrent.atomic包中类的确切用途是什么?
【发布时间】:2012-09-03 18:40:54
【问题描述】:

我是比较新的java。我正在尝试了解包中类的用途:

java.util.concurrent.atomic

我试图了解这个包的 javaDoc 以掌握它。但是我什么时候应该使用这些类真的没有任何意义。有人可以用简单的话给出例子和更多描述吗?谢谢

【问题讨论】:

标签: java concurrency atomic java.util.concurrent


【解决方案1】:

考虑 10 个线程正在递增 int i(初始化为 0)并将值输出到控制台。你可以得到这样的东西:

1
2
2
3
3
5
6
6
8
10

例如,AtomicInteger 确保每个线程可以原子地增加或减少值,确保写入操作以同步方式发生,对于 10 个线程,输出将始终为:

1
2
3
4
5
6
7
8
9
10

【讨论】:

  • 为什么在第一个示例中从 3 跳到 5,从 6 跳到 8? 2个线程不应该同时读取一个值并写入相同的值吗?
猜你喜欢
  • 2014-11-23
  • 1970-01-01
  • 2023-04-01
  • 1970-01-01
  • 2020-04-26
  • 2016-08-26
  • 2019-09-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多