Java線程:線程棧模型與線程的變量

要理解線程調度的原理,以及線程執行過程,必須理解線程棧模型。
線程棧是指某時刻時內存中線程調度的棧信息,當前調用的方法總是位於棧頂。線程棧的內容是隨着程序的運行動態變化的,因此研究線程棧必須選擇一個運行的時刻(實際上指代碼運行到什麼地方)。
 
下面通過一個示例性的代碼說明線程(調用)棧的變化過程。
 

 
這幅圖描述在代碼執行到兩個不同時刻1、2時候,虛擬機線程調用棧示意圖。
 
當程序執行到t.start();時候,程序多出一個分支(增加了一個調用棧B),這樣,棧A、棧B並行執行。
 
從這裏就可以看出方法調用和線程啓動的區別了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章