Executor 框架结构 Executor 框架主要由 3 大部分组成如下。任务。包括被执行任务需要实现的接口:Runnable 接口或 Ca...
线程池带来的好处 第一:降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 第二:提高响应速度。当任务到达时,任务可以不需要等...
阻塞队列 BlockingQueue BlockingQueue用法 BlockingQueue 通常用于一个线程生产对象,而另外一个线程消费...
同步容器类 同步容器类Vector 和 Hashtable ,以及一些由 Collections.synchronizedXxx 等工厂方法创建...
多线程之间的通信 线程通信概念:线程是操作系统中独立的个体,但这些个体如果不经过特殊处理就不能成为一个整体,线程间的通信就成为整体的必用方式之一...
volatile 概念 volatile 关键字的主要作用是使变量在多个线程之间可见性。这里的“可见性”是指当一条线程修改了这个变量值,新值对于...
什么是线程安全性 当多个线程访问某个类时,这个类始终都能表现出正确的行为,那么久称这个类是线程安全的。 当多个线程访问某个类时,不管运行时环境采...
前序遍历 前序遍历: 根节点->左节点->右节点 递归方式:代码实现 非递归方式: 中序遍历 中序遍历: 左节点->根节点->右节点 递归方式...
常见索引类型 主键索引它是一种特殊的唯一索引,不允许有空值。 普通索引最基本的索引,它没有任何限制。 唯一索引普通索引类似,不同的就是:索引列的...