lifeidgp 2013-03-02 21:15
浏览 260
已采纳

这样的Java代码是线程安全的吗?

[code="java"]public class IncreaseTest {
private int value = 0;

public synchronized int increment() {
    return value++;
}

}[/code]

方法increment()是线程安全的吗?还是必须要加上关键字:volatile

[code="java"]private volatile int value = 0;[/code]

  • 写回答

7条回答 默认 最新

  • 咖啡机 2013-03-02 22:05
    关注

    是的,因为你已经加了synchronized keyword 了,就是所谓的原子性保证了。
    有关原子性的问题可以看看 《thinking in java》 的 concurrency 部分内容。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

悬赏问题

  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?
  • ¥15 电磁场的matlab仿真
  • ¥15 mars2d在vue3中的引入问题
  • ¥50 h5唤醒支付宝并跳转至向小荷包转账界面
  • ¥15 算法题:数的划分,用记忆化DFS做WA求调
  • ¥15 chatglm-6b应用到django项目中,模型加载失败
  • ¥15 CreateBitmapFromWicBitmap内存释放问题。
  • ¥30 win c++ socket
  • ¥15 C# datagridview 栏位进度