阻塞队列

阻塞队列常用于生产者和消费者的场景,生产者是往队列里添加元素的线程,消费者是从队列里拿元素的线程。阻塞队列就是生产者存放元素的容器,而消费者也只从容器里拿元素。 BlockingQueue即阻塞队列,从阻塞这个词可以看出,在某些情况下对阻塞队列的访问可能会造成阻塞。被阻塞的情况主要有如下两种:当队列满了的时候进行入队列操作,当队列空了的时候进行出队列操作

LRU缓存

LRU简介构建双向链表,使用HashMap来进行contains。使用ReentrantLock来控制并发访问,当发生put或者get的请求,把对应的数据move到头部,当容量满了之后,淘汰末尾的数据;代码实现定义双向链表的节点 class CacheNode<K, V>{

面试.md

date: 2020-06-19 00:32:43多线程什么是多线程并发和并行?并行:多个线程在做的事情同时去做,互不干扰并发:多个线程在做的同一个事情,都达到了就绪状态,但是同一时间只有一个线程可以工作。什么是线程安全问题?多个线程并发环境下,多个线程共同访问同一共享资源的竞态访问问题。什么是共享