摘要: 1.1 概述 相信大家在大学的时候都学习过散列表。 使用散列表的查找算法主要分为两步,第一步是利用散列函数将被查找的键转化为一个索引,理想情况下,所有不同的key都会被散列为不同的索引值,但是由于散列函数无法达到完美的散列,所以,我们通常还需要处理碰撞的情况。 处理碰撞的方法主要有两种,一种是拉链法 阅读全文
posted @ 2018-10-12 17:58 菱灵心 阅读(389) 评论(0) 推荐(0) 编辑
摘要: 容器之路 List解析 1.类图 这里我们主要介绍两个类,分别是 和 ,这两个类都是List的实现类,下面是简要的类图。 2. 是我们非常常用的list实现,这个类的底层实际上是使用可以变化长度数组来保存数据,一些操作都是非常简单的,我们主要需要注意的就是可以变化长度这一点的实现方式。 关键字表示 阅读全文
posted @ 2018-10-12 17:56 菱灵心 阅读(172) 评论(0) 推荐(1) 编辑
摘要: 线程池中 方法解析 概览 上篇我们说到线程池中从队列中去任务的地方时在 类中的方法,这篇我们就来分析一下,这个方法。 这部分代码实际是十分容易理解,但是,其中关于中断的处理是我们需要注意的,也就是有注释的那一段,我们需要详细理解一下。 理解这部分,首先我们要对线程的中断有详细的了解。 线程的中断 首 阅读全文
posted @ 2018-10-09 22:31 菱灵心 阅读(1963) 评论(0) 推荐(0) 编辑
摘要: 线程池的分类 首先我们需要了解,使用线程池的目的。如果我们有大量的较短的异步任务需要执行,那么我们需要频繁的去创建线程并关闭线程。那么这样做的代价是十分巨大的,因此,我们就采用了一种线程池的做法,实际上,我们常用了池类方式还有数据库连接池,这种一般是将一些比较珍贵的资源放在池中,然后,每次使用完毕, 阅读全文
posted @ 2018-09-13 15:39 菱灵心 阅读(922) 评论(0) 推荐(0) 编辑
摘要: 写线程池的时候到底需不需要自己包装FutureTask 一般来说,我们会写一个Runnable接口的实现用来包装我们需要异步执行的内容。但是,Runnable是没有实现的,有些时候,我们需要执行的内容是一个有返回值的方法或者需要抛出异常,这个时候,我们就需要使用Callable接口。 简单来说,ca 阅读全文
posted @ 2018-09-12 00:23 菱灵心 阅读(243) 评论(0) 推荐(0) 编辑
摘要: 深入并发二 ThreadLocal源码与内存泄漏相关分析 这篇文章的主要内容是介绍 类使用方法,源码实现,以及实际应用。 实际上是在多线程编程的过程中,每个线程用来保存局部变量的一个类,用这个类保存的变量在属于各个线程独有,不会互相影响,那么我们就可以实现不同线程保存同一个变量的不同值。 Threa 阅读全文
posted @ 2018-08-03 09:35 菱灵心 阅读(601) 评论(2) 推荐(1) 编辑
摘要: 深入并发包之(一) 从来ReentrantLock看AbstractQueuedSynchronizer源码 这篇文章是一篇并发相关的源码分析文章,主要从源码级别分析AQS操作(主要关于阻塞锁的实现),从而加深对并发中 和 两种锁的理解。 AQS概述 下面引用JDK文档中对AQS类的描述: 为实现依 阅读全文
posted @ 2018-07-24 22:21 菱灵心 阅读(264) 评论(0) 推荐(0) 编辑
摘要: 本篇文章将介绍两种自己动手实现可重入锁的方法。 我们都知道JDK中提供了一个类 ,利用这个类我们可以实现一个可重入锁,这种锁相对于 来说是一种轻量级锁。 重入锁的概念 重入锁实际上指的就是一个线程在没有释放锁的情况下,可以多次进入加锁的代码块。 这种情况下,如果我们加的锁不是支持可重入的锁,那么b方 阅读全文
posted @ 2018-06-24 23:39 菱灵心 阅读(2887) 评论(1) 推荐(1) 编辑
摘要: 深入浅出MySQL读书笔记(二) 1.前言 这篇文章是读书笔记的第二部分,主要内容是MySQL中锁的实现。具体内容如下: MyISAM引擎表锁的相关内容 InnoDB引擎行锁相关内容 事务的原子性 事务隔离级别 下面逐一介绍。 2.表锁与行锁的对比 MySQL中锁机制实际上是比较简单的,不同的存储引 阅读全文
posted @ 2018-06-03 14:38 菱灵心 阅读(411) 评论(0) 推荐(1) 编辑
摘要: 深入浅出MySQL读书笔记(一) 前言 在某大神童靴的强烈安利下最近阅读了深入浅出MySQL一书,这本书的第三部分,介绍了MySQL数据库的一些优化方法,非常值得一读,推荐大家如果有时间都可以阅读一下,下面博客的主要内容实际是个人的读书笔记。主要内容包括以下方面: 索引相关内容 常见SQL的优化方法 阅读全文
posted @ 2018-05-26 19:26 菱灵心 阅读(1972) 评论(3) 推荐(1) 编辑