Skip to content
面试手册
Search
K
Main Navigation
首页
Java
Java基础面试题
JVM面试题
Java并发编程面试题
数据库
MySQL面试题
Redis面试题
MyBatis面试题
微服务
Spring面试题
SpringMVC面试题
SpringBoot面试题
SpringCloud面试题
Dubbo面试题
MQ
消息队列基础
RabbitMQ精选面试题
Kafka精选面试题
RocketMQ精选面试题
学习
Java
SpringBoot
GitHub
Twitter
Appearance
GitHub
Twitter
Menu
Return to top
目录概览
Table of Contents for current page
在 Java 程序中怎么保证多线程的运行安全?
#
出现线程安全问题的原因
线程切换带来的原子性问题
缓存导致的可见性问题
编译优化带来的有序性问题
解决办法
JDK Atomic开头的原子类、synchronized、LOCK,可以解决原子性问题
synchronized、volatile、LOCK,可以解决可见性问题
Happens-Before 规则可以解决有序性问题