面试题

1. 三种缓存模式1.1 旁路缓存模式Cache Aside Pattern1.2 读写穿透Read/Write Through Pattern1.3 异步缓存写入Write Behind Pattern2. 分布式系统服务注册与发现原理3. Spring Boot自动装配原理4. 讲讲读写分离和分库分表的理解4.1 读写分离的好处4.2 读写分离会带来什么问题?如何解决?4.3 ...

网络资源

TTL应用

1. TransmittableThreadLocal 怎么用?1.1 ThreadLocal使用子线程获取不到 父线程set到ThreadLocal所修饰变量的值; public class TtlTest { @Test public void Test001() { ThreadLocal<String> stringThrea...

并发编程

LockSupport

1. 简介为构建锁和同步器提供基本的线程阻塞唤醒原语,LockSupport中的park()和unpark()的作用分别是阻塞线程和解除阻塞线程。类似于wait和notify,类似于await和signal。 2. 使用示例// 1. pack unpackpublic static void main(String[] args){ Thread t1 = new Thre...

并发编程

Condition

Condition1. 使用Condition实现等待通知机制public class ConTest { final Lock lock = new ReentrantLock(); final Condition condition = lock.newCondition(); public static void main(String[] args) &#...

并发编程

CompleteFeature

1. FeatureTaskFutureTask是Runnable, Future接口的实现类; { FutureTask<String> futureTask = new FutureTask<String>( () -> { System.out.println(Thread.currentThread().getNa...

并发编程

Interrupt

如何中断一个线程?1. while循环判断interrupt标识{ Thread t1 = new Thread(() -> { while (true) { if(Thread.currentThread().isInterrupted()) { System.out.pr...

并发编程

AQS DEMO

通过一些demo ,尝试理解juc包下的一些类的用法; 1. 使用ReentrantLock进行同步说明:开启四个线程,每个线程首先去执行lock方法后,睡眠不同的时间后,最后执行unlock方法。 @Testpublic void Test() { ReentrantLock reentrantLock = new ReentrantLock();//非公平锁 // A B...

并发编程

CAS

CAS1. ABA问题{ static AtomicInteger atomicInteger = new AtomicInteger(100); static AtomicStampedReference<Integer> stampedReference = new AtomicStampedReference<>(100,1); pu...

并发编程

原子类

原子类1. LongAdder2. LongAccumulator{ LongAdder longAdder = new LongAdder(); longAdder.increment(); longAdder.increment(); longAdder.increment(); System.out.println(longAdder.sum()...

并发编程

ArrayList

1. 简介2. 源码分析继承关系属性方法内部类构造方法 3. 常见问题

并发编程
167891013

本站由 卡卡龙 使用 Stellar 1.33.1主题创建

本站访问量 次. 本文阅读量 次.