
java并发
Maugs_Luyao
业余程序猿,知名段子手
展开
-
关于synchronized和ReentrantLock之多线程同步详解
本篇文章总结关于多线程编程的一些知识点,这其中两个重要的部分就是对于synchronized和ReentrantLock的使用和介绍。一、线程同步问题的产生及解决方案问题的产生:Java允许多线程并发控制,当多个线程同时操作一个可共享的资源变量时(如数据的增删改查),将会导致数据不准确,相互之间产生冲突。如下例:假设有一个卖票系统,一共有100张票,有4个窗口同时卖。public class Ti...转载 2018-06-20 16:58:45 · 205 阅读 · 0 评论 -
你真的了解volatile关键字吗?
volatile关键字经常在并发编程中使用,其特性是保证可见性以及有序性,但是关于volatile的使用仍然要小心,这需要明白volatile关键字的特性及实现的原理,这也是本篇文章的主要内容。一、Java内存模型想要理解volatile为什么能确保可见性,就要先理解Java中的内存模型是什么样的。Java内存模型规定了所有的变量都存储在主内存中。每条线程中还有自己的工作内存,线程的工作内存中保存...转载 2018-06-20 16:42:56 · 195 阅读 · 0 评论