Java设计模式——装饰者模式 装饰者模式是Java程序设计中常用的设计模式之一,当系统设计由于继承造成子类过多不利用维护和功能扩展时,使用装饰者模式是一个非常不错的选择,本文将以模拟sso单点登录的案例进行装饰者模式的详细介绍。
ThreadLocal详解 ThreadLocal是一个通过线程隔离的方式解决多线程操作共享资源造成数据不一致问题的类。ThreadLocal通过在多线程环境下为每一个线程创建单独的变量副本,线程之间的变量副本互不影响,每个线程拥有自己的变量副本因此就不存在多线程间共享的问题,从而保证线程安全。本文详解ThreadLocal的底层实现原理及内存泄漏问题。
Java并发——CountDownLatch `CountDownLatch`是Java并发中常用的一个工具类,通常称为锁存器latch,作用为同步一个或多个任务,强制等待指定任务执行完成,即多线程中控制一个或多个线程去等待其他线程完成操作。本文将详解介绍CountDownLatch的使用及底层原理。
Java并发——线程池 线程的创建和销毁需要占用CPU资源,若频繁的进行创建和销毁会产生很大的开销,影响性能和系统稳定性。此时就需要线程池,本文将从使用到底层实现详解Java中的线程池ThreadPoolExecutor类。
Redis原理篇——五种基本数据类型 Redis底层数据类型,SDS、ZipList、QuickList、SkipList、IntSet、Dict。五种基本数据类型实现String、List、Zset、Set、Hash详解