- 543.二叉树的直径
- 思路:左右子树最大高度和
- Shenandoah GC in production: experience report
- 点评:垃圾回收器 Shenandoah GC
- 简介
- 大部分的 GC 工作与应用并行运行,不会造成很多的系统停顿
- 没有分代的概念,需要标记所有存活对象,但也避免了分代带来的一些额外工作量
- 并行的代价是系统吞吐量的降低
- 支持的 JDK 版本:8、11、12
- 为什么使用 Shenandoah GC?
- 对于交互式的应用来说,GC 停顿十分影响系统使用,它会造成响应慢、响应超时、请求队列积压溢出等问题
- Shenandoah GC 带来的吞吐量降低完全可以通过增加服务的方式来解决
- Shenandoah GC 参数调优
- 简介
- 调用栈
- 计算机在内部使用被称为调用栈的栈,用于存储多个函数的变量
- 调用函数 A(压入函数 A 及其变量),当函数 A 调用函数 B 时(压入函数 B 及其变量),当前函数 A 暂停并处于未完成状态,该函数的所有变量的值都在内存中,执行完函数 B 后,回到函数 A(弹出函数 B 及其变量,栈顶内存块现在是函数 A),并从离开的地方开始接着往下执行
- 各函数变量是不能互相访问的
- 递归函数使用调用栈
- 计算机在内部使用被称为调用栈的栈,用于存储多个函数的变量