本篇解析 example-sync-03.kt。探讨如何利用 Java 的原子类解决并发累加问题。
1. 核心工具:AtomicInteger
在 Java/Kotlin 中,AtomicInteger 利用了底层的 CAS(Compare-And-Swap)机制,保证了操作的原子性。
代码解析
1 | val counter = AtomicInteger() |
2. 开发者感悟
对于简单的计数器或状态位,原子类是最轻量且高效的选择。它比使用锁(Lock)开销更小。但在处理复杂的业务逻辑(不仅是简单的加法)时,原子类的局限性就会体现出来,我们需要更通用的方案。