前言
作为一个已经毕业的计算机专业学长,其实几年大学走来还是挺感慨万千的。(说明一下:一本,非958、211)
老实说,上大学之前填志愿选专业的时候没有任何打算,就觉得学海熬到头了,向往已久的大学舒坦日子要来了,像老一辈人说的“飞出笼的鸟”。
最后选的计算机专业也挺喜剧的,因为爱打游戏,所以觉得自己对计算机还挺感兴趣的。当时我并不知道之后我会因为这个决定而改变我的生活。
1. 垃圾回收机制
Stop-the-World:
JVM由于要执行GC而停止了应用程序的执行称之为Stop-the-World,该情形会在任何一种GC算法中发生。当Stop-the-world发生时,除了GC所需的线程以外,所有线程都处于等待状态直到GC任务完成。事实上,GC优化很多时候就是指减少Stop-the-world发生的时间,从而使系统具有 高吞吐 、低停顿 的特点。
2. java运行时的内存划分
1. 程序计数器
记录当前线程所执行的字节码行号,用于获取下一条执行的字节码。
当多线程运行时,每个线程切换后需要知道上一次所运行的状态、位置。
由此也可以看出程序计数器是每个线程私有的。
3. 虚拟机栈
虚拟机栈由一个一个的栈帧组成,栈帧是在每一个方法调用时产生的。