C# (類型、對象、線程棧和託管堆)在運行時的相互關係

  在介紹運行時的關係之前,先從一些計算機基礎只是入手,如下圖: 該圖展示了已加載CLR的一個windows進程,該進程可能有多個線程,線程創建時會分配到1MB的棧空間.棧空間用於向方法傳遞實參,方法定義的局部變量也在實參上,上圖的右側展示了線程的棧內存,棧從高位內存地址向地位內存地址構建.圖中線程已經執行了一些代碼,棧中已經存在了一些數據(圖中陰影部分),現在假定線程執行的代碼要調用M1方法.
相關文章
相關標籤/搜索