1.什么是ThreadLocal ThreadLocal顾名思义是线程局部变量.这种变量和普通的变量不同,这种变量在每个线程中通过get和set方法访问, 每个线程有自己独立的变量副本.线程局部变量不存在多个线程同时对同一个变量的操作,所以不会有线程安全问题. 2.ThreadLocal变量的使用 public class ThreadLocalDemo { private ThreadLocal<Integer> threadLocal = new ThreadLocal<Intege…
public class MyDataSource { private static LinkedList<Connection> pool = new LinkedList<>(); private static final int INIT_CONNECTIONS = 10; private static final String DRIVER_NAME = "com.mysql.jdbc.Driver"; private static final Stri…
1.Semaphore简介 Semaphore,是JDK1.5的java.util.concurrent并发包中提供的一个并发工具类. 所谓Semaphore即 信号量 的意思. 这个叫法并不能很好地表示它的作用,更形象的说法应该是许可证管理器. 其作用在JDK注释中是这样描述的: A counting semaphore. Conceptually, a semaphore maintains a set of permits. Each {@link #acquire} blocks if…