我有一個class X
與被聲明爲靜態成員大尺寸領域的成員y
(在內存方面),我注意到,每個I實例的X
對象時,本場拿到加載或重新加載到內存中。 y
的底層結構是dictionary<string,int>
,它擁有大約5000個kvs。有沒有一種方法可以將y
聲明爲單獨的顯式字典,並在應用程序生命週期內保持活動狀態?保持一個對象活在C#
注意:在運行時可以放置X的對象,所以更準確的問題是:如果字典被聲明爲類的靜態成員,如果該類的對象有垃圾,靜態成員是否會保留在內存中收集或明確銷燬?
靜態成員在應用程序的整個生命週期中保持活躍狀態。你是怎麼注意到該字段被重新加載的? –
你是怎麼知道的 - 「每次我實例化一個X的對象時,這個字段都會被加載或者重載到內存中?靜態字段在其生命週期中僅被初始化或加載一次。 – RBT
「我注意到,每次我實例化一個X的對象時,這個字段都會被加載或重新加載到內存中。」 - 你能告訴我們你的構造函數嗎?我很好奇,如果你有'y =新詞典(){etc ..}' –
Quantic