自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

黑暗骑士

黑暗崛起

  • 博客(6)
  • 收藏
  • 关注

原创 《JAVA并发编程实践》读书笔记(五)

第13章 显式锁在Java 5.0中增加了一种新的机制 :ReentrantLock。13.1 Lock 与 ReentrantLock Lock提供了一种无条件、可轮询、定时的以及可中断的锁获取操作。 public interface Lock{ void lock(); void lockInterruptibly() throws InterruptedExceptio

2016-08-02 21:20:00 283

原创 《JAVA并发编程实践》读书笔记(五)

第10章 避免活跃性危险 如果所有的线程以固定的顺序来获得锁,那么在程序中就不会出现锁顺序死锁的问题。10.1 锁顺序死锁 如果存在嵌套的锁获取操作,则很容易发生动态的锁顺序死锁。如果可能出现这种情况,则可以计算存在竞争的两个对象的散列值,按照散列值的大小顺序一致性地加锁。也可以在获得这两个锁之前,使用一种叫做“加时赛”锁的机制去竞争获得锁。如果持有锁的阶段是发生在两个不同的外部方法中,那么将有

2016-08-02 20:43:57 300

原创 《JAVA并发编程实践》读书笔记(四)

第8章 线程池的使用 任务和执行策略是隐含耦合的,包括:依赖性任务、使用线程封闭机制执行的任务、对响应时间敏感的任务以及使用ThreadLocal的任务。8.1 处理运行时间较长的任务 采用限定任务等待资源的时间,而不要无限期等待。Java类库大多数可阻塞的方法中,都提供的限定时间的版本和无限时间的版本,如 Thread.join, BlockingQueue.put, CountDownLat

2016-08-02 19:11:42 329

原创 《JAVA并发编程实践》读书笔记(三)

第6章 任务执行 大部分并发应用程序都是围绕“任务执行(Task Execution)”来构造,任务通常是一些抽象的且离散的工作单元。 在线程中执行任务,既不能让服务器串行地工作在单线程下,但同时也不能无限制的创建线程,因而产生Executor框架。线程池简化了线程的管理工作,并且java.util.concurrent提供了一种灵活的线程池实现作为Executor框架的一部分。在Java类库中

2016-08-02 17:52:12 331

原创 《JAVA并发编程实践》读书笔记(二)

第4章 对象的组合 在Java中,同步经常是与状态挂钩的,想要实现等待某个先验条件为真时才执行的操作,可以通过Java库中的一些阻塞类,例如BlockingQueue, Semaphore以及其他同步工具类来实现(待会会讲到)。同时,同步还涉及到一个状态所有权的问题,在大多数情况下,所有权是与封装性互相关联的:对象封装它拥有的状态。但是容器类表现出“所有权”分离的形式,容器类拥有其自身的状态,而客

2016-08-02 11:26:38 438

原创 《JAVA并发编程实践》读书笔记(一)

《JAVA并发编程实践》读书笔记(一)2016年8月1日,“妮妲”冲击广东,全市放假1天。托“妮妲”的福,终于有空将近期的阅读整理一下。 最近利用业余时间重读了Brian Goetz的书,觉得受益匪浅。以前一知半解的概念和用法都在这次阅读中得到了答案。1.并发简史 并发随操作系统的发展而发展起来,操作系统为各个独立执行的进程分配各种资源,包括内存、文件句柄以及安全证书等,不同的进程间可以通过一些

2016-08-02 01:04:55 2641

空空如也

空空如也

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

TA关注的人

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