java三大流:數據流、控制流、指令流
線程是執行程序的最小單元,一個線程中也有這些東西。
java 運行時數據區:
1.程序計數器 指向當前線程正在執行的字節碼指令地址。如果此時從一個線程轉為執行另一個線程,此時就會中斷,
當重新執行該線程后,就通過讀取該計數器獲得接下來執行的地址來執行。
2.虛擬機棧:指當前線程運行方法所需要的數據、指令、返回地址
執行方法需要知道:methodOne :局部變量表、操作數棧、動態鏈接、出口
棧(FILO、xss(深度也就是大小))棧幀(出棧入棧單元,也可認為是數據大小)
操作數棧:寄存器(存放中間結果)
如:int sum = i+j;此時先壓棧 i 和 j 然后出棧,計算后存儲sum放到操作數棧中
3.本地方法棧:
JVM內存模型
?