第九周作业
请简述 JVM 垃圾回收原理。
JVM 垃圾回收的目的是清理内存空间,为后续的程序运行腾出位置。
过程是,首先进行垃圾对象识别。从线程栈帧里拿到种子变量开始根据引用关系递归的查找堆中的对象,并将它们进行标记,当全部有引用的对象被识别完成后,其他的对象为垃圾。然后对他们进行垃圾处理,有三种方式:清除、压缩和复制。清除是将被清除对象的空间写入空闲列表,后面需要使用改空间的对象覆盖就可以了。后两种方式是用来腾出大块的连续内存空间。
设计一个秒杀系统,主要的挑战和问题有哪些?核心的架构方案或者思路有哪些?
如图:
评论