自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(3)
  • 收藏
  • 关注

原创 synchronized关键字和监视器

Lock和Condition接口为我们提供了高度的锁定机制,然而,大多数情况下,并不需要那样的控制,我们可以选择一种更简洁的方式——使用一种嵌入到Java语言内部的机制,synchronized关键字。内部锁要理解并使用synchronized关键字,必须首先知道:从Java 1.0版本开始,Java中的每一个对象都有一个内部锁。内部锁是存在Java对象头里的一部分数据。如果对象是数组类型,...

2018-12-05 17:49:01 820 1

原创 条件对象

有时候,线程获得锁进入临界区,却发现在满足某一条件后它才能执行。所以我们要用一个条件对象来管理那些已经获得了一个锁,但是却不能做有用工作的线程。在之前的模拟银行转账的例子中,假如有一个转账线程进入了临界区,却发现转出账户的余额不足以转出足够的金额,这时候它应该等待其他线程向该账户转入足够的金额。但是,该线程又获得了锁对象banklock,其他线程无法再进行转账操作。这就是需要条件对象的原因。...

2018-12-03 22:12:54 347

原创 同步机制和ReentrantLock类

通过上一篇文章我们已经知道了在并发操作时,对相同数据进行存取会导致了数据的不一致问题,那么导致这样的问题的原因是什么呢?并发下数据不一致问题的原因造成并发操作下数据不一致问题的原因主要在于:各线程对数据的存取时机冲突造成的。每个线程都有自己的工作空间,各线程会将共享变量从主存拷贝到各自的工作内存,线程在工作内存中进行操作后再写入主存。如下图:同步机制为了解决并发带来问题,必须进行并发控...

2018-12-02 18:04:59 265

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除