ThreadLocal 提供线程局部变量,使用它保存的变量在每个线程中都是独立的变量副本,ThreadLocal 通常是类中的私有静态字段,用于将状态与线程相关联。如下所示: pu…
什么是单例模式? 单例保证一个对象JVM中只能有一个实例 这里提供一个双重锁校验单例,并且引出了序列化破坏的问题,本篇来说一下这个原理和解决 首先把上一篇的单例代码拿过来贴上: /…
1、从一个案例说起 观察下面的代码请你判断代码的输出: public class TestCase1 { private static ThreadLocal threadLoca…
全局异常处理类 @ControllerAdvice //控制器增强类 @Slf4j public class ExceptionCatch { /** * 处理不可控异常 * @p…
概念 threadlocal为每一个线程提供一个单独的存储空间,具有线程隔离的作用,只有在线程内才能获取到对应的值,线程外则不能访问 工具类 public class BaseCo…
大家在平时开发中大多都会遵循接口编程,这样就可以方便实现依赖注入也方便实现多态等各种小技巧,但这种是以牺牲性能为代价换取代码的灵活性,万物皆有阴阳,看你的应用场景进行取舍。一:背景…
创建CacheHelper.cs public class CacheHelper { public static IMemoryCache _memoryCache = new …
环境搭建 服务注册 builder.Services.AddHttpClient(); 创建实体类 namespace HttpClient { public class Requ…
参考 C#中Json序列化和反序列化总结 JavaScriptSerialize 创建实体类 using System; using System.Collections.Gene…
🍊一. 观察多线程下n++和n--操作 我们目前所知当一个变量n==0,n++了1000次并且 n--了1000次,我们的预期结果为0,但是当两个线程分别执行++和--操作时最后的…
枚举 枚举某种程度上也是一种语法糖。枚举主要是代替过多的public static final修饰的全局常量。 枚举快速开始 搞个demo看看: public enum MyEnu…
双重锁校验单例 什么是单例模式? 单例保证一个对象JVM中只能有一个实例 直接上代码吧: /** * 双重锁校验的单例 */ public class DoubleLock imp…
现代程序员写代码没有人敢说自己没用过泛型,这个泛型模板T可以被任何你想要的类型替代,确实很魔法很神奇,很多人也习以为常了,但就是这么有趣的泛型T底层到底是怎么帮你实现的,不知道有多…
栈(Stack)是一种常见的数据结构,它遵循后进先出(LIFO,Last-In-First-Out)的原则。 基本介绍 栈可以看作是一种特殊的线性表,只能在一端进行插入和删除操作,…
开发流程① 在 openGauss 社区 Plugin 仓进行兼容性相关开发(https://gitee.com/opengauss/Plugin)② 通过 fastcheck 自…
本教程大概目录:模拟单线程情节用Callable实现 并发编程用DeferedResult实现异步处理###模拟单线程情节。/** * Created by Fant.J. */ …
代理设计模式 通过对目标对象(target)进行封装, 对程序进行加强处理。例如:获得目标对象方法的运行总时长、Spring的面向切面编程。 实现原理:创建一个代理类(proxy)…