JUC模式:Balking 模式

笔记  JUC  Java 

Balking 模式:当一个线程尝试执行某个操作时,它首先会检查一个条件(通常是某个状态或标志位),判断这个操作是否已经被其他线程完成,或者当前对象的状态是否不适合执行此操作。 如果操作已被完成或条件不满足: 线程会“犹豫”或“退避”,立即放弃执行该操作并返回,而不会等待条件改变或尝试重复执行。 如

两阶段终止

笔记  JUC  Java 

package org.example;import lombok.extern.slf4j.Slf4j;@Slf4jpublic class TwoStageStop { public static void main(String[] args) throws InterruptedExc

Java内存模型

笔记  JUC  Java 

可见性问题package org.example;import lombok.extern.slf4j.Slf4j;import java.util.concurrent.TimeUnit;import java.util.logging.Logger;//TIP To <b>Run&l

交替输出abc

笔记  JUC  Java 

package cn.meowrain;import lombok.extern.slf4j.Slf4j;@Slf4jpublic class WaitNotify { private int loopNumber; private int flag; public WaitNot

Java.md

笔记  Java 

SE基础数据变量类型 成员变量局部变量静态变量定义位置在类中,方法外方法中或者方法的形参在类中,方法外初始化值有默认初始化值无,赋值后才能使用有默认初始化值调用方法对象调用 对象调用,类名调用存储位置堆中栈中方法区(JDK8 以后移到堆中)生命周期与对象共存亡与方法共存亡与类共存亡别名实例变量 类变

中间件+maven+netty(来源于互联网)

笔记  Java 

Maven基本介绍Mvn介绍Maven:本质是一个项目管理工具,将项目开发和管理过程抽象成一个项目对象模型(POM)POM:Project Object Model 项目对象模型。Maven 是用 Java 语言编写的,管理的东西以面向对象的形式进行设计,最终把一个项目看成一个对象,这个对象叫做 P

SSM.md(来源于互联网)


MyBatis基本介绍ORM(Object Relational Mapping): 对象关系映射,指的是持久化数据和实体对象的映射模式,解决面向对象与关系型数据库存在的互不匹配的现象MyBatis:MyBatis 是一个优秀的基于 Java 的持久层框架,它内部封装了 JDBC,使开发者只需关注

JUC笔记(来自互联网)

笔记  JUC  Java 

JUC进程概述进程:程序是静止的,进程实体的运行过程就是进程,是系统进行资源分配的基本单位进程的特征:并发性、异步性、动态性、独立性、结构性线程:线程是属于进程的,是一个基本的 CPU 执行单元,是程序执行流的最小单元。线程是进程中的一个实体,是系统独立调度的基本单位,线程本身不拥有系统资源,只拥有

常见线程安全类

笔记  JUC  Java 

多个组合不是原子的验证:

变量的线程安全分析

笔记  JUC  Java 

package cn.meowrain;import java.util.ArrayList;import java.util.List;import java.util.Vector;import java.util.concurrent.CountDownLatch;import java.ut