天天看點

一般程式的執行上下文棧之入棧出棧

入棧出棧

一般程式的執行上下文棧之入棧出棧

在執行代碼前,先建立全局上下文環境。

一般程式的執行上下文棧之入棧出棧

開始執行代碼

一般程式的執行上下文棧之入棧出棧

進入funcOut函數,執行函數語句前,建立新的執行上下文環境

一般程式的執行上下文棧之入棧出棧

并将該上下文環境壓棧,設定為活動狀态

一般程式的執行上下文棧之入棧出棧

調用funcIn()函數,進入funcIn()函數體之前,建立funcIn()的上下文環境,并壓棧,設定為活動狀态。

一般程式的執行上下文棧之入棧出棧
一般程式的執行上下文棧之入棧出棧

funcIn()執行完畢後,funcIn()的執行上下文環境出棧,并且被銷毀,釋放記憶體。

一般程式的執行上下文棧之入棧出棧

funOut()執行完畢後,funcOut()的執行上下文環境出棧,并且被銷毀,釋放記憶體。

一般程式的執行上下文棧之入棧出棧

部落格簽名:敬畏生命,珍惜時間,熱愛生活。