
java高并发
cullinans
这个作者很懒,什么都没留下…
展开
-
《java高并发程序设计》读书笔记(1)
并发几个重要的概念同步&异步 二者一般都指方法的调用,同步方法一旦调用开始,调用者必须等到方法调用返回后才能继续后续的行为,异步方法调用更像一个消息传递,一旦开始,方法调用就会立即返回,调用者可以继续后续的操作。而异步方法通常会在另外一个线程中“真实”地执行。临界区:表示公共资源或者共享数据,可以被多个线程使用 阻塞&非阻塞:形容多线程间的相互影响。 阻塞:比如一个线程占用了临界区资源,那么其他原创 2017-10-13 16:51:41 · 395 阅读 · 0 评论 -
《java高并发程序设计》读书笔记(2)
有关线程必知 线程&进程 - 线程:轻量级进程是程序执行的最小单位。 - 进程:计算机中程序关于某数据集合上的一次运行活动是系统进行资源分配和调度的基本单位,是操作系统结构的基础,是线程的容器。 线程的基本操作 新建线程 Thread thread=new Thread(); thread.run(); new Thread(new Runnable()原创 2017-10-13 16:54:50 · 288 阅读 · 0 评论 -
《java高并发程序设计》读书笔记(3)
多线程的团队协作:同步控制 重入锁:这种锁可以反复进入,可以响应中断(lockInterruptibly()方法),可以申请等待时限(tryLock(),tryLock(long timeout, TimeUnit unit)),可以产生公平锁防止饥饿(new ReentrantLock(true))。案例代码: import java.util.concurrent.locks.Reentrant原创 2017-10-13 16:56:00 · 427 阅读 · 0 评论 -
《java高并发程序设计》读书笔记(4)
提高锁性能 如何提高锁性能 减小锁持有的时间 减小锁粒度 锁分离 锁粗化 java虚拟机对锁优化的处理 偏向锁:如果一个线程获得了锁,那么锁就进入偏向模式,当这个线程再次请求锁时,无须再做任何同步操作,这样可以节省大量有关锁申请的操作,适合几乎没有锁竞争的场合。 轻量级锁:虚拟机只是简单的将对象头部作为指针,指向持有锁的线程堆栈的内部,以此判断一个线程是否持有锁。如果获得轻量级锁成功,则可顺利进原创 2017-10-13 17:06:52 · 359 阅读 · 5 评论