内存回收常用算法:
- 引用计数
- 可达性分析(GC Root)
如何判断一个对象的死亡?
1 | 当一个对象不再被任何存活的对象继续引用的时候,这个对象就死亡了。 |
观察者模式定义了对象之间的一对多依赖,当一个对象改变状态时,它的所有依赖者都会收到通知并自动更新。
本文使用8种方法实现在多线程中让线程按顺序运行:
动态代理的功能:
1 | package com.justxzm.proxy; |
相同点:
不同点:
Java线程的创建与销毁需要一定的开销,如果为每一个任务创建一个新线程来执行:
Java的线程既是工作单元,也是执行机制。从JDK 5开始,把工作单元与执行机制分离开来。工作单元包括Runnable和Callable,而执行机制由Executor框架提供。
在HotSpot VM的线程模型中,Java线程(java.lang.Thread)被一对一映射为本地操作系统线程:
这种两级调度模型: