课程大纲
学习路线规划
技术篇
行业资讯
pmp
软考
什么是CAS?CAS叫做CompareAndSwap,比较并交换,主要是通过处理器的指令来保证操作的原子性的。CAS 操作包含三个参数:共享变量的内存地址(V)、预期原值(A)和新值(B),当且仅当内存地址 ...详情>>
ReentrantLock怎么实现公平锁的?ReentrantLock可以通过构造函数的参数来控制锁的公平性,如果传入 true,就表示该锁是公平的;如果传入 false,就表示该锁是不公平的。new Reentran ...详情>>
ReentrantLock实现原理?ReentrantLock是一种可重入的排它锁,主要用来解决多线程对共享资源竞争的问题;它提供了比synchronized关键字更加灵活的锁机制。其实现原理主要涉及以 ...详情>>
说说synchronized和ReentrantLock的区别可以从锁的实现、性能、功能特点等几个维度去回答这个问题: 锁的实现: synchronized是Java语言的关键字,基于JVM实现。而ReentrantLock ...详情>>
synchronized的可见性,有序性,可重入性是怎么实现的?synchronized怎么保证可见性? 线程加锁前,将清空工作内存中共享变量的值,从而使用共享变量时需要从主内存中重新读取最新的值 ...详情>>
synchronized的实现原理?我们使用synchronized的时候,发现不用自己去lock和unlock,是因为JVM帮我们把这个事情做了。 synchronized修饰代码块时,JVM采用monitorenter、monitore ...详情>>
synchronized用过吗?怎么使用?synchronized经常用的,用来保证代码的原子性。synchronized主要有三种用法: 修饰实例方法: 作用于当前对象实例加锁,进入同步代码前要获得当前对象 ...详情>>
volatile实现原理了解吗?volatile有两个作用,保证可见性和有序性。可见性:当一个变量被声明为 volatile 时,它会告诉编译器和CPU将该变量存储在主内存中,而不是线程的本地内存中 ...详情>>
as-if-serial又是什么?单线程的程序一定是顺序的吗?as-if-serial是指无论如何重排序都不会影响单线程程序的执行结果。这个原则的核心思想是编译器和处理器等各个层面的优化, ...详情>>
指令重排有限制吗?happens-before了解吗?指令重排也是有一些限制的,有两个规则happens-before和as-if-serial来约束。happens-before的定义: 如果一个操作happens-before另一个 ...详情>>
如何在Java中实现深拷贝(Deep Copy)?
解释Java中的动态绑定与静态绑定的区别
如何在Java中实现自定义的比较器(Comparator)?
Java中的集合框架中,HashSet与LinkedHashSet之间的区别是什么?
解释Java中的反射性能影响及其优化策略
如何在Java中实现组合模式(Composite Pattern)?
2024-10-31
2024-10-06
2024-09-13
2024-08-01
2025-01-02