网站首页 > java教程 正文
并发编程三要素(线程的安全性问题体现在):
1.原子性:原子,即一个不可再被分割的颗粒。原子性指的是一个或多个操作要么全部执行成功要么全部执行失败。

2.可见性:一个线程对共享变量的修改,另一个线程能够立刻看到。(synchronized,volatile)
3.有序性:程序执行的顺序按照代码的先后顺序执行。(处理器可能会对指令进行重排序)
--------------------------------------------
出现线程安全问题的原因:
- 线程切换带来的原子性问题
- 缓存导致的可见性问题
- 编译优化带来的有序性问题
解决办法:
- JDK Atomic开头的原子类、synchronized、LOCK,可以解决原子性问题
- synchronized、volatile、LOCK,可以解决可见性问题
- Happens-Before 规则可以解决有序性问题
猜你喜欢
- 2025-03-19 面试官:使用int类型做加减操作,是线程安全吗
- 2025-03-19 Redis多线程版本是如何保证线程安全的?
- 2025-03-19 JAVA多线程编程-线程安全性AtomicInteger原子操作
- 2025-03-19 C# 并发请求中的线程安全问题(c#多线程编程实战与c#并发编程经典实例)
- 2025-03-19 为什么i++用volatile是存在线程安全问题的?
- 2025-03-19 java线程并发安全专题-java线程的生命周期
- 2025-03-19 为什么?为什么StringBuilder是线程不安全的?
- 2025-03-19 面试突击18:为什么ConcurrentHashMap是线程安全的?
- 2025-03-19 为什么 HashMap 是线程不安全的(为什么hashmap是线程不安全的)
- 2025-03-19 介绍一下Python中的线程安全和如何实现
欢迎 你 发表评论:
- 12-21网易邮箱实名认证(网易邮箱实名认证不是本人怎么修改)
- 12-21路由器登录页面怎么进入(路由器登录入口在哪)
- 12-21ghostxpsp3纯净版安装(纯净版ghost安装器)
- 12-21windows7手机下载中文版(windows7手机版下载正版)
- 12-21惠普电脑重装系统后无法引导
- 12-21ip切换器安卓免费版(ip切换哪个好)
- 12-21主板bios是什么意思啊(主板bios的作用)
- 12-21自助共享打印机(自助共享打印机市场如何)
- 最近发表
- 标签列表
-
- java反编译工具 (77)
- java反射 (57)
- java接口 (61)
- java随机数 (63)
- java7下载 (59)
- java数据结构 (61)
- java 三目运算符 (65)
- java对象转map (63)
- Java继承 (69)
- java字符串替换 (60)
- 快速排序java (59)
- java并发编程 (58)
- java api文档 (60)
- centos安装java (57)
- java调用webservice接口 (61)
- java深拷贝 (61)
- 工厂模式java (59)
- java代理模式 (59)
- java.lang (57)
- java连接mysql数据库 (67)
- java重载 (68)
- java 循环语句 (66)
- java反序列化 (58)
- java时间函数 (60)
- java是值传递还是引用传递 (62)

本文暂时没有评论,来添加一个吧(●'◡'●)