随笔分类 - 并发编程
摘要:目标: BIO、NIO、AIO 的区别是什么? 同/异步、阻/非阻塞的区别是什么? 文件读写最优雅的实现方式是什么? NIO 如何实现多路复用功能? 一,IO的介绍: (1)IO的全称其实是:Input/Output的缩写。 (2)我们通常所说的 BIO 是相对于 NIO 来说的,BIO 也就是 J
阅读全文
摘要:Cookie 和Session是什么? 彻底搞懂cookie的运行原由? 什么时候不能用Cookie,什么时候不能用Session session在什么时候创建,以及session一致性问题 Cookie和Session的区别: 1.COOKIE的由来:因为HTTP请求时没有状态的,每一次请求都是独
阅读全文
摘要:什么是线程池? 在面向对象编程中,在创建和销毁线程是很费时间的,因为创建一个对象要获取内存资源或者其他更多的资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是很耗费资源的对象创建和销毁。如
阅读全文
摘要:一,阻塞队列? 当阻塞队列为空时,获取(take)操作是阻塞的;当阻塞队列为满时,添加(put)操作是阻塞的。 二,为什么用,有什么好处? 阻塞队列不用手动控制什么时候该被阻塞,什么时候该被唤醒,简化了操作。 在多线程领域:所谓阻塞,在某些情况下会挂起线程(即阻塞),一旦条件满足,被挂起的线程又会自
阅读全文
摘要:CountDownLatch/CyclicBarrier/Semaphore 使用过吗?下面详细介绍用法: 一,(等待多线程完成的)CountDownLatch 背景; countDownLatch(同步援助)是在java1.5被引入,跟它一起被引入的工具类还有CyclicBarrier(同步援助)
阅读全文
摘要:Java 中15种锁的介绍 1,在读很多并发文章中,会提及各种各样的锁,如公平锁,乐观锁,下面是对各种锁的总结归纳: 公平锁/非公平锁 可重入锁/不可重入锁 独享锁/共享锁 互斥锁/读写锁 乐观锁/悲观锁 分段锁 偏向锁/轻量级锁/重量级锁 自旋锁 上面是很多锁的名词,这些分类并不是全是指锁的状态,
阅读全文
摘要:(1)CAS是什么? 比较并交换 举例1, CAS产生场景代码? 举例2, CAS产生场景代码?原子引用 public class CAS_ABADemo { public static void main(String[] args) { // 原子引用 User A = new User("A"
阅读全文