并发模式之单例和不变模式2022年7月28日| Java并发单例模式 单例模式是为了确保系统中某个类只存在一个实例。 在多种写法中,推荐使用静态内部类方式,利用类加载一次特性确保只有一个实例(线程安全), 同时具备无锁和懒创建优点。 示例: public class StaticInnerClassSingleton { // 私有化构造方法 private StaticInnerClassSingleton(){}……阅读全文
并发模式之单例和不变模式2022年7月28日| Java并发单例模式 单例模式是为了确保系统中某个类只存在一个实例。 在多种写法中,推荐使用静态内部类方式,利用类加载一次特性确保只有一个实例(线程安全), 同时具备无锁和懒创建优点。 示例: public class StaticInnerClassSingleton { // 私有化构造方法 private StaticInnerClassSingleton(){}……阅读全文
Java关键字synchronized2022年7月24日| Java并发提纲 定义 synchronized是同步块,实现了多线程间的互斥同步。它修饰的代码,确保任一时刻只有一个线程进入访问。 特性 因为在synchronized同步块内,只有一个线程能访问,因此确保了同步块内的……阅读全文
Java关键字synchronized2022年7月24日| Java并发提纲 定义 synchronized是同步块,实现了多线程间的互斥同步。它修饰的代码,确保任一时刻只有一个线程进入访问。 特性 因为在synchronized同步块内,只有一个线程能访问,因此确保了同步块内的……阅读全文
Java的线程实现2022年7月20日| Java并发Java线程是如何实现的? 当我们追踪Java线程的实现时,可以发现Thread类的start方法最后会运行一个start0方法,而这个方法是native的,也就是交由JDK来实现的(JDK会屏蔽调底层……阅读全文
Java的线程实现2022年7月20日| Java并发Java线程是如何实现的? 当我们追踪Java线程的实现时,可以发现Thread类的start方法最后会运行一个start0方法,而这个方法是native的,也就是交由JDK来实现的(JDK会屏蔽调底层……阅读全文
Java关键字之volatile2022年7月19日| Java并发提纲 定义 语义上,volatile是表示易变的、不确定的。 功能上,是Java提供的最轻量级的同步机制。 前因:从CPU缓存架构类比JMM线程工作内存和主内存关系 要弄懂如何保证可见性的,请看下图,左侧是CP……阅读全文
Java关键字之volatile2022年7月19日| Java并发提纲 定义 语义上,volatile是表示易变的、不确定的。 功能上,是Java提供的最轻量级的同步机制。 前因:从CPU缓存架构类比JMM线程工作内存和主内存关系 要弄懂如何保证可见性的,请看下图,左侧是CP……阅读全文
Java多线程同步控制方法2022年7月17日| Java并发关键字Synchronized 关键字Synchronized、Object.wat()和Object.notify()是在jdk1.5之前用的多线程同步控制的方式,jdk1.5之后就提供了如下的jav……阅读全文
Java多线程同步控制方法2022年7月17日| Java并发关键字Synchronized 关键字Synchronized、Object.wat()和Object.notify()是在jdk1.5之前用的多线程同步控制的方式,jdk1.5之后就提供了如下的jav……阅读全文