簡體   English   中英

ASP.NET垃圾回收:引用靜態類屬性是否很危險?

[英]ASP.NET garbage collection: is referencing static class property dangerous?

假設包含以下屬性的“ MyModel”類:

public List ListOfAlbumsTitles => AlbumsHelper.ListOfAlbumsTitles;

AlbumsHelper是一個靜態類。 這是否意味着由於引用靜態類屬性而不會自動收集MyModel的對象?

不, MyModel實例將被處以罰款。 MyModel存儲的是對其他地方(即在AlbumsHelper )正在使用的東西的引用。

參考是涉及垃圾收集的單向方法。 因此,只要Bar生存,從FooBar的引用將使Foo保持生命。 反之亦然。

反之亦然。

只要沒有對該對象的引用便可以收集任何對象 傳出引用與對象壽命無關。

想象一下,如果不是這種情況會發生什么—垃圾收集器永遠無法收集任何不為null東西–將其對其他對象的所有引用都刪除掉。 那不是很有用。

不,邏輯是相反的,如果AlbumsHelper不是靜態類,則此分配將阻止對其進行收集。 但是因為類是靜態的,所以沒有關系。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM