上一页 1 ··· 14 15 16 17 18
摘要: 最常用的方式: int a = 12; //注意:通常情况下,这个会设置成一个类变量,比如说Segement中的段锁与copyOnWriteArrayList中的全局锁 final ReentrantLock lock = new ReentrantLock(); lock.lock();//获取锁 阅读全文
posted @ 2018-04-24 23:46 yifanSJ 阅读(196) 评论(0) 推荐(0) 编辑
摘要: 最常用的方式: int a = 12; //注意:通常情况下,这个会设置成一个类变量,比如说Segement中的段锁与copyOnWriteArrayList中的全局锁 final ReentrantLock lock = new ReentrantLock(); lock.lock();//获取锁 阅读全文
posted @ 2018-04-24 17:57 yifanSJ 阅读(258) 评论(0) 推荐(0) 编辑
摘要: 1、对于LinkedBlockingQueue需要掌握以下几点 创建 入队(添加元素) 出队(删除元素) 2、创建 Node节点内部类与LinkedBlockingQueue的一些属性 static class Node<E> { E item;//节点封装的数据 /** * One of: * - 阅读全文
posted @ 2018-04-22 23:48 yifanSJ 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 1、原子类 可以实现一些原子操作 基于CAS 下面就以AtomicInteger为例。 2、AtomicInteger 在没有AtomicInteger之前,对于一个Integer的线程安全操作,是需要使用同步锁来实现的,当然现在也可以通过ReentrantLock来实现,但是最好最方便的实现方式是 阅读全文
posted @ 2018-04-22 23:35 yifanSJ 阅读(164) 评论(0) 推荐(0) 编辑
上一页 1 ··· 14 15 16 17 18