ThreadLocal 保证的是单个线程内部访问的是同一个实例,不同线程访问的不是同一个实例。 package test; public class Singleton { private static final...
如果采用有界BlockingQueue,队列满后启用maximumPoolSize,达到maximumPoolSize上限后走RejectedExecutionHandler的逻辑;如果采用无...
背景 这篇文章最开始再我的群里面有讨论过,当时想写的这篇文章的,但是因为一些时间的关系所以便没有写。最近阅读微信文章的时候发现了一篇零度写的一篇文章《分享一道阿里Java并发面试题》,对于有关Java并发性技术的文章我一般还是挺感兴趣的,于...
1. 基于线程的join(long millis)方法 其实这个方法比较牵强,因为它主要作用是用来多个线程之间进行同步的。但因为它提供了这个带参数的方法(所以这也给了我们一个更广泛的思路,就是一般带有超时参数的方法我们都可以尝试着用它来实现...
父类静态成员变量、父类静态代码块 👉🏿 子类静态成员变量、子类静态代码块 👉🏿 父类成员变量、父类代码块 👉🏿 父类构造方法 👉🏿 子类成员变量、子类代码块 👉🏿 子类构造方法 Java中类及方法的加载顺序 Java类加载顺序
泛型的好处 提供了一种类型安全检测机制 提升程序可读性 通配符 通配符的出现是为了指定泛型中的类型范围。 通配符有 3 种形式。 <?>被称作无限定的通配符。 <? extends T>被称作有上限的通配符。 <? super T>被...
结论 Java中单精度和双精度采用IEEE 754表示,能有效运算的范围大致是小数点后7位和15位 如果Java中默认的float和double不能满足你的精度要求,可以用BigDecimal,理论上它的精度只受限制与机器内存 如...
排除应用之外的影响因素: top(cpu)、free(内存)、df(磁盘)、dstat(网络流量)、pstack、vmstat、st1race(底层系统调用) top 定位CPU 最高的进程 top -Hp pid...
1. 使用synchronized 饱汉:双重检查锁定、饿汉、静态内部类、枚举 都属于利用synchronized同步原理实现 1.1 饱汉:双重检查锁定(double-checked locking) public class...
Linux线程的状态与调度 Java线程的6种状态及切换 Java 线程的生命周期中,在 Thread 类里有一个枚举类型 State,定义了线程的几种状态,分别有: New Runnable Blocked Waiting Timed...