细读JVM(01) ---------- Java内存区域

2019-12-07  本文已影响0人  快乐的小码农呀

  Java虚拟机在运行Java程序的过程中会把所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途以及创建和销毁的时间,有的区域随着Java虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而创建和销毁。
                        --摘自《深入理解Java虚拟机》

内存区域图示

程序计数器(program counter)

  学过线程的同学应该了解,Java的多线程是通过CPU不断在线程之间切换来实现的,那么我们不禁要问:当线程的指令并没有执行完毕,却因为时间片耗尽而失去了CPU使用权,又该如何从挂起的地方继续执行呢?关于这个问题,不得不提到一个概念,就是程序计数器(program counter)。
  JVM中通过程序计数器来记录当前字节码的执行位置,使已经挂起的线程重新获得CPU使用权后,依旧能够继续往下执行。讲解完了用途之后,我们总结一下程序计数器的几个特点:

上一篇 下一篇

猜你喜欢

热点阅读