2. 目录
目录
免责声明 ......................................................................................................................................................... 3
1.1. 1:机器学习 .......................................................................................................................................... 3
1.2. 1:数据库设计 ...................................................................................................................................... 3
2. 目录 ......................................................................................................................................................... 5
3. JVM ....................................................................................................................................................... 16
3.1. 线程 ...................................................................................................................................................... 17
3.2. JVM 内存区域 ..................................................................................................................................... 18
3.2.1.
程序计数器
(
线程私有
) ................................................................................................................ 19
3.2.2.
虚拟机栈
(
线程私有
) .................................................................................................................... 20
3.2.3.
本地方法区
(
线程私有
) ................................................................................................................ 20
3.2.4.
堆(
Heap-
线程共享)
-
运行时数据区
...................................................................................... 20
3.2.5.
方法区(线程共享)
.................................................................................................................. 21
3.3. JVM 运行时内存 ................................................................................................................................. 21
3.3.1.
新生代
.......................................................................................................................................... 21
3.3.2.
老年代
.......................................................................................................................................... 22
3.3.3.
永久代
.......................................................................................................................................... 22
3.4. 垃圾回收与算法 .................................................................................................................................. 23
3.4.1.
如何确定垃圾
.............................................................................................................................. 23
3.4.1.1. 引用计数法............................................................................................................................................... 23
3.4.1.2. 可达性分析............................................................................................................................................... 23
3.4.2.
标记清除算法(Mark-Sweep)
.............................................................................................. 24
3.4.3.
复制算法(
copying
)
................................................................................................................. 24
3.4.4.
标记整理算法
(Mark-Compact) .................................................................................................. 25
3.4.5.
分代收集算法
.............................................................................................................................. 26
3.5. JAVA 四中引用类型 ........................................................................................................................... 26
3.5.1.
强引用
.......................................................................................................................................... 26
3.5.2.
软引用
.......................................................................................................................................... 26
3.5.3.
弱引用
.......................................................................................................................................... 27
3.5.4.
虚引用
.......................................................................................................................................... 27
3.6. GC 分代收集算法 VS 分区收集算法 ................................................................................................ 27
3.6.1.
分代收集算法
.............................................................................................................................. 27
3.6.2.
分区收集算法
.............................................................................................................................. 27
3.7. GC 垃圾收集器 ................................................................................................................................... 27
3.7.1. Serial
垃圾收集器
....................................................................................................................... 28
3.7.2. ParNew
垃圾收集器
................................................................................................................... 28
3.7.3. Parallel Scavenge
收集器
......................................................................................................... 28
3.7.4. Serial Old
收集器
........................................................................................................................ 29
3.7.5. Parallel Old
收集器
..................................................................................................................... 29
3.7.6. CMS
收集器
................................................................................................................................. 30
3.7.7. G1
收集器
.................................................................................................................................... 31
3.8. JAVA IO/NIO ....................................................................................................................................... 31
3.8.1.
阻塞
IO
模型
................................................................................................................................ 31
3.8.2.
非阻塞
IO
模型
............................................................................................................................ 31
3.8.3.
多路复用
IO
模型
........................................................................................................................ 32
3.8.4.
信号驱动
IO
模型
........................................................................................................................ 32
3.8.5.
异步
IO
模型
................................................................................................................................ 32
3.8.1. JAVA IO
包
.................................................................................................................................. 33
3.8.2. JAVA NIO
包
............................................................................................................................... 34
3.8.3. Channel ....................................................................................................................................... 37