zhch602
V2EX  ›  Java

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

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

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


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


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

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