字节跳动国际化教育二面
- java 里面线程有哪些状态
- wait 状态下的线程如何进行恢复到 running 状态
- notify 和 notifyAll 的区别
- notify 选择哪个线程
- 如何停止一个线程的运行
- 调用 interrupt 是如何让线程抛出异常的(没答上)
- 如果是靠变量来停止线程,需要注意什么
- 为什么要声明为 volatile
- volatile 是如何做到这个类似于同步的操作的
- 指令重排序指的是什么
- 为什么指令重排序能优化代码执行速度(只答了个大概)
- volatile 保证原子性吗,为什么
- 那我们要如何保证原子性
- synchronized 可以放在哪些地方
- synchronized 支持重入吗,如何实现的
- wait 状态下的线程如何进行恢复到 running 状态
- 事务有哪些特性
- 隔离性有哪些隔离级别
- MySQL 默认用的哪个级别
- 间隙锁的原理
- 什么时候会加间隙锁
- MySQL 如何保证原子性
- undo log 撤销过程具体是怎么撤销的(不知道)
- 隔离性有哪些隔离级别
- 怎么决定建立哪些索引
- 最左匹配,举个例子
- Redis 使用场景
- Redis 性能好的原因
- 为什么要用 IO 多路复用
- Redis 性能好的原因
- HTTP 与 HTTPS 协议的区别
- 实习经历
- 前后端数据交换除了 JSON 还有什么
- 开放接口安全性了解吗(有关我的实习经历的)
- 有 40 亿个 32 位的数,构造一个数与他们都不相同(搞了半天搞错了)
- 算法题:只记得有关滑动窗口,应该是力扣 TOP 100 的