admin的文章

后端

大白话带你认识JVM

admin阅读(61)评论(0)赞(1)

前言 如果在文中用词或者理解方面出现问题,欢迎指出。此文旨在提及而不深究,但会尽量效率地把知识点都抛出来 一、JVM的基本介绍 JVM 是 Java Virtual Machine 的缩写,它是一个虚构出来的计算机,一种规范。通过在实际的计...

后端

面试官最爱的volatile关键字

admin阅读(69)评论(0)赞(2)

在Java相关的岗位面试中,很多面试官都喜欢考察面试者对Java并发的了解程度,而以volatile关键字作为一个小的切入点,往往可以一问到底,把Java内存模型(JMM),Java并发编程的一些特性都牵扯出来,深入地话还可以考察JVM底层...

后端

ThreadLocal的设计精要

admin阅读(57)评论(0)赞(1)

1 ThreadLocal 是什么? ThreadLocal是指线程的本地变量,我们可以通过ThreadLocal去设计只有线程内部才可以访问的变量,该变量是与其他线程所隔离的。 2 ThreadLocal 可以干什么? ThreadLoc...

后端

基于Redis的分布式锁实现

admin阅读(62)评论(0)赞(2)

前言 本篇文章主要介绍基于Redis的分布式锁实现到底是怎么一回事,其中参考了许多大佬写的文章,算是对分布式锁做一个总结 分布式锁概览 在多线程的环境下,为了保证一个代码块在同一时间只能由一个线程访问,Java中我们一般可以使用synchr...

后端

解决Redis、MySQL缓存双写不一致问题

admin阅读(66)评论(0)赞(2)

redis、mysql双写缓存不一致: 但是在更新缓存方面,对于更新完数据库,是更新缓存呢,还是删除缓存。又或者是先删除缓存,再更新数据库,其实大家存在很大的争议。目前没有一篇全面的博客,对这几种方案进行解析。于是博主战战兢兢,顶着被大家喷...

SpringBoot

Spring高频面试题:如何解决循环依赖问题

admin阅读(65)评论(0)赞(2)

什么是循环依赖问题? 类与类之间的依赖关系形成了闭环,就会导致循环依赖问题的产生。 比如下图中A类依赖了B类,B类依赖了C类,而最后C类又依赖了A类,这样就形成了循环依赖问题。 循环依赖案例分析 演示代码: public class Cla...

后端

Java并发工具类(闭锁CountDownLatch)

admin阅读(189)评论(0)赞(4)

闭锁是一种同步工具类,可以延迟线程的进度直到其到达终止状态。 CountDownLatch是一种灵活的闭锁实现,它可以使一个或者多个线程等待一组事件的发生。 闭锁状态包含一个计数器,该计数器被初始化为一个正数,表示需要等待的事件数量。cou...

后端

Java并发工具类(信号量Semaphore)

admin阅读(189)评论(0)赞(4)

定义 计数信号量用来控制同时访问某个特定资源的操作数量,或者同时执行某个指定操作的数量。信号量还可以用来实现某种资源池,或者对容器施加边界。 Semaphore管理着一组许可(permit),许可的初始数量可以通过构造函数设定,操作时首先要...