摘要: ReentrantLock和ReentrantReadWriteLock类的构造器都含有一个布尔参数fair,它允许你控制这两个类的行为。默认fair值为false,它称为非公平模式(Non-Fair Mode)。在非公平模式下,当有很多线程在等待锁(ReentrantLock和Reentran... 阅读全文
posted @ 2015-10-24 19:28 ~风轻云淡~ 阅读(266) 评论(0) 推荐(0) 编辑
摘要: 1、《Scala深入浅出实战经典》http://pan.baidu.com/s/1pJnAUr52、《Spark纯实战公益大讲坛》http://pan.baidu.com/s/1sLeVk3、《Docker公益大讲坛》http://pan.baidu.com/s/1hq0GztU4、《spark亚太... 阅读全文
posted @ 2015-10-24 16:15 ~风轻云淡~ 阅读(322) 评论(0) 推荐(0) 编辑
摘要: 锁机制最大的改进之一就是ReadWriteLock接口和它的唯一实现类ReentrantReadWriteLock。这个类有两个锁,一个是读操作锁,另一个是写操作锁。使用读操作锁时可以允许多个线程同时访问,但是使用写操作锁时只允许一个线程进行。在一个线程执行写操作时,其他线程不能够执行读操作。 ... 阅读全文
posted @ 2015-10-24 15:28 ~风轻云淡~ 阅读(353) 评论(1) 推荐(0) 编辑
摘要: Java提供了同步代码块的另一种机制,它是一种比synchronized关键字更强大也更灵活的机制。这种机制基于Lock接口及其实现类(例如ReentrantLock),提供了更多的好处。支持更灵活的同步代码块结构。使用synchronized关键字时,只能在同一个syanchronized块结... 阅读全文
posted @ 2015-10-24 14:42 ~风轻云淡~ 阅读(740) 评论(0) 推荐(0) 编辑
摘要: 工厂模式是面向对象编程中最常使用的模式之一。它是一个创建者模式,使用一个类为其他的一个或者多个类创建对象。当我们要为这些类创建对象时,不需再使用new构造器,而使用工厂类。 使用工厂类,可以将对象的创建集中化,这样做有以下的好处:更容易修改类,或者改变创建对象的方式;更容易为有限资源限制创建对... 阅读全文
posted @ 2015-10-24 13:09 ~风轻云淡~ 阅读(1343) 评论(0) 推荐(0) 编辑
摘要: Java API提供了一个有趣的功能,它能够把线程分组。这允许我们把一个组的线程当成一个单一的单元,对组内线程对象进行访问并操作他们。例如,对于一些执行同样任务的线程,你想控制它们,不管多少线程在运行,只需要一个单一的调用,所有这些线程的运行都会被中断。 Java提供ThreadGroup类表... 阅读全文
posted @ 2015-10-24 12:08 ~风轻云淡~ 阅读(674) 评论(0) 推荐(0) 编辑
摘要: 共享数据是并发程序最核心的问题之一,对于继承了Thread类或者实现了Runnable接口的对象来说尤其重要。如果创建的对象是实现了Runable接口的类的实例,用它作为传入参数创建多个线程对象并启动这些线程,那么所有的线程将共享相同的属性。也就是说,如果你在一个线程中改变了一个属性,所有的线程... 阅读全文
posted @ 2015-10-24 09:52 ~风轻云淡~ 阅读(6682) 评论(0) 推荐(0) 编辑