0%

Java高并发

此处暂时收集一些常见的面试题,以后针对这块的收集从此处延伸下去并补全

(1)synchronized的CPU原语级别是如何实现的?

(2)无锁、偏向锁、轻量级锁、重量级锁有什么差别,升级过程如何?

(3)线程间通信,同机器进程间通信,跨机器进程间通信,各有什么方法?

(4)下列三种业务,应该如何使用线程池:

  • 高并发、任务执行时间短的业务
  • 并发不高、任务执行时间长的业务
  • 并发高、业务执行时间长的业务

(5)秒杀系统,如何能够撑住100W级别TPS(淘宝最高54万TPS)?

下面是某网课的内容,笑笑就好

1、synchronized关键字的字节码原语;

2、volatile关键字的字节码原语;

3、synchronized与volatile的硬件级实现;

4、无锁、偏向锁、轻量级锁、重量级锁的升级过程;

5、内存屏障的基本概念;

6、JVM规范如何要求内存屏障;

7、硬件层级内存屏障如何帮助java实现高并发;

8、面试第3题(线程间通讯)的8种解法;

9、作业;

1、线程池的学与思;

2、使用线程池的好与不好;

3、为什么阿里开发手册建议自定义线程池;

4、自定义线程池的最佳实践;

5、常见线程池类型与应用场景:

1)CachedPool

2)FixedThreadPool

3)ScheduledPool

4)WorkStealingPool

5)ForkJoinPool

6、比线程更牛X的线程,压测结果展现纤程的威力;

7、总结;