开发者社区> 问答> 正文

[@徐雷frank][¥20]Java 中 ++ 操作符是线程安全的吗?

问题来自Java技术沙龙的李博
Java线下沙龙报名链接:https://yq.aliyun.com/activity/796

展开
收起
李博 bluemind 2018-12-13 14:22:41 2320 0
2 条回答
写回答
取消 提交回答
  • 宇宙虽有其起源,却没有终结。无限。 星球虽也有起源,却因其自身之力走向毁灭。有限。

    不安全,因为++只是java的语法,在实现上简单且不严谨的说会经历 1.取值放栈上 2.执行+1,得到结果 3.将结果赋值回去
    从而3部有很多节点都会有线程安全问题造成结果的不可预知和不正确。

    2019-07-17 23:20:39
    赞同 展开评论 打赏
  • 1.阿里云大学讲师,主讲《微服务Spring Cloud设计与开发实战》《MongoDB高级实战》等课程 2.MongoDB中文社区专家 3.《MongoDB实战》第2版译者 5.吉林大学计算机科学学士、上海交通大学硕士

    1、java中的++操作符不是线程安全的。
    2、++操作符需要在CPU和主存之间来回读取和存回数据,时间段,但是并没有多线程互斥加锁,
    3、想线程安全可以加lock实现

    2019-07-17 23:20:39
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Spring Cloud Alibaba - 重新定义 Java Cloud-Native 立即下载
The Reactive Cloud Native Arch 立即下载
JAVA开发手册1.5.0 立即下载