快手Java 一二面面经(基础架构)
上周五一面,周一打电话约今天上午11点二面。二面感觉还行,应该能过。到现在也没通知后续。
请问大家,快手java二面后多久通知三面或者HR面啊?
一面
-
自我介绍
-
多进程用过什么东西
-
concurrenthashmap用什么保证的线程安全,为什么用了synchronized之后还要用cas保证线程安全
-
cas是怎么实现原子操作的,可能会出现什么问题
-
悲观锁和乐观锁,怎么实现的乐观锁
-
JUC的原子类用过哪些,怎么保证的线程安全
-
condition用过吗?怎么使用的
-
线程池的类别,参数和使用场景
-
blockedqueue是怎么实现的,怎么工作的
-
如果核心线程池是无界队列,当线程数很大时,会出现什么情况
-
线程的几种状态,waiting和blocked有什么区别
-
手撕hashmap的put方法
-
反问
二面
-
介绍项目,项目的实现细节,有什么优化
-
mysql事务是什么,怎么实现cas
-
1TB的文件里面全是IPv4地址,单机怎么找到出现次数top10的ip地址。如果这个文件全部能装入内存,最多会占多少内存
-
算法题:基本类似于二叉树层次遍历,稍微做了点变换
-
反问