zhch602
V2EX  ›  Java

JVM 标量替换的变量是存在本地变量表中么?

  •  
  •   zhch602 · Nov 6, 2020 · 1471 views
    This topic created in 2043 days ago, the information mentioned may be changed or developed.

    Java 的逃逸分析只发生在 JIT 的即时编译中,而标量替换又是基于逃逸分析的,标量替换将对象分解成基本类型存在栈帧中,到底是存储在什么地方呢?


    如果存在本地变量表中,本地变量表是一个数组,在前端编译成字节码的时候就确定了大小,即 slot 的数量,那么本地变量表就存不下这些被分解的基本类型变量。


    所以本地变量表会在运行期变长?还是说这些对象的成员变量是存在栈的其他地方?

    No Comments Yet
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3556 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 34ms · UTC 04:53 · PVG 12:53 · LAX 21:53 · JFK 00:53
    ♥ Do have faith in what you're doing.