课程大纲
学习路线规划
技术篇
行业资讯
pmp
软考
如何排查死锁问题可以使用jdk自带的命令行工具排查: 使用jps查找运行的Java进程:jps -l 使用jstack查看线程堆栈信息:jstack -l 进程id基本就可以看到死锁的信息。还可以利用 ...详情>>
什么是线程死锁?我们该如何避免线程死锁?死锁是指两个或两个以上的线程在执行过程中,因争夺资源而造成的互相等待的现象,在无外力作用的情况下,这些线程会一直相互等待而无法继 ...详情>>
AtomicInteger的原理是什么?一句话概括:使用CAS实现。在AtomicInteger中,CAS操作的流程如下: 调用 incrementAndGet()方法,该方法会通过调用unsafe.getAndAddInt()方法,获取当前 ...详情>>
Java多线程中如何保证i++的结果正确 使用 Atomic变量,Java 并发包内提供了一些原子类型,如AtomicInteger、AtomicLong等,这些类提供了一些原子操作方法,可以保证相应的操作的原 ...详情>>
CAS存在什么问题?如何解决?CAS的经典三大问题:ABA问题ABA 问题是指一个变量从A变成B,再从B变成A,这样的操作序列可能会被CAS操作误判为未被其他线程修改过。例如线程A读取了某个 ...详情>>
什么是CAS?CAS叫做CompareAndSwap,比较并交换,主要是通过处理器的指令来保证操作的原子性的。CAS 操作包含三个参数:共享变量的内存地址(V)、预期原值(A)和新值(B),当且仅当内存地址 ...详情>>
ReentrantLock怎么实现公平锁的?ReentrantLock可以通过构造函数的参数来控制锁的公平性,如果传入 true,就表示该锁是公平的;如果传入 false,就表示该锁是不公平的。new Reentran ...详情>>
ReentrantLock实现原理?ReentrantLock是一种可重入的排它锁,主要用来解决多线程对共享资源竞争的问题;它提供了比synchronized关键字更加灵活的锁机制。其实现原理主要涉及以 ...详情>>
说说synchronized和ReentrantLock的区别可以从锁的实现、性能、功能特点等几个维度去回答这个问题: 锁的实现: synchronized是Java语言的关键字,基于JVM实现。而ReentrantLock ...详情>>
synchronized的可见性,有序性,可重入性是怎么实现的?synchronized怎么保证可见性? 线程加锁前,将清空工作内存中共享变量的值,从而使用共享变量时需要从主内存中重新读取最新的值 ...详情>>
什么是Java中的函数式接口?请举例说明
解释Java中的静态导入(static import)及其应用场景
如何在Java中实现方法重载和方法重写?
解释Java中的String、StringBuilder和StringBuffer的区别
如何在Java中实现自定义注解?注解有什么应用场景?
什么是Java中的Lambda表达式,它的优点是什么?
2024-10-06
2024-09-13
2024-08-01
2024-10-22