BlockingQueue 阻塞队列,顾名思义,首先它是一个队列,而一个队列在数据结构中所起的作用大致如下图所示: 从上图我们可以很清楚看到,通过一个共享的队列,可以使得数据...
IP属地:吉林
BlockingQueue 阻塞队列,顾名思义,首先它是一个队列,而一个队列在数据结构中所起的作用大致如下图所示: 从上图我们可以很清楚看到,通过一个共享的队列,可以使得数据...
LSM简介 Log Structured Merge Tree,下面简称 LSM。2006年,Google 发表了 BigTable[https://static.googl...
简介 整理一些面试时线程池常问的问题 1.核心线程如何一直保活 答案:由于任务都是存在阻塞队列中,Worker从队列拿任务时通过阻塞队列take()方法让线程等待,使得Wor...
worker线程 线程池的每一个线程其实就是一个封装好的worker。 Worker又继承了AQS,通过锁来保证线程安全1.lock方法一旦获取了独占锁,表示当前线程正在执行...
前言 由于线程池涉及的知识点比较多,会以上中下三篇文章来叙述;当我们面试时,如果遇到了面试官让你说一下线程池,我们可以先讲一下线程池的核心思想:1.复用线程,降低线程创建与销...
简介 阿里面试的时候经常会问到高并发,解决并发的方案就是cas,也是AtomicLong这些原子类,那么如果问你除了Atomic这些原子类之外的解法呢? cas java....
前言 在一线开发中,需要快速完成业务需求开发,此时不可避免的出现if...else..这种硬编码判断逻辑,当代码包含大量这种结构时会降低代码的可读性,扩展性,并且不易维护,策...
一.前言 在日常的开发中,经常需要对方法参数进行校验(非空、长度等)。如果采用hardcode去校验(if..else..),会造成代码冗余,复用性低,导致维护成本比较高。借...