首页
/
每日頭條
/
圖文
/
夏蟲不可語冰的故事典故
夏蟲不可語冰的故事典故
更新时间:2025-11-28 23:52:32

夏蟲不可語冰的故事典故?此次事件讓我再次體會到了什麼是“夏蟲不可語冰”博客園有些人壓根沒看完你的文章,帶着已有認知斷章取義不假思索上來就是噴不過,以前也遇到過,現在也慢慢習慣了,下面我們就來說一說關于夏蟲不可語冰的故事典故?我們一起去了解并探讨一下這個問題吧!

夏蟲不可語冰的故事典故(夏蟲不可語冰)1

夏蟲不可語冰的故事典故

此次事件讓我再次體會到了什麼是“夏蟲不可語冰”。博客園有些人壓根沒看完你的文章,帶着已有認知斷章取義不假思索上來就是噴。不過,以前也遇到過,現在也慢慢習慣了。

對于托管堆内存洩漏的說法,不管認不認同,我還是希望我的粉絲們能知道有這麼個定義,有這麼一回事。相信你們以後在閱讀文章或與人交流的時候,還會看到或聽到有人管這種現象叫内存洩漏,屆時也不至于蒙圈。雖然這是個很小的知識點。

C#中的匿名函數是頭等對象,可以作為變量使用,也可以作為參數傳遞。Task.Run 中使用匿名函數作為參數就是一個典型的應用場景。如果匿名函數捕獲了所在類的成員,對外部調用者來說,這個類的實例什麼時候被釋放是無法預知的(除非你十分清楚這個類的内部實現),但你知道它最終是會被回收的。有人把這種可能導緻對象延遲回收的現象定義為内存洩漏,也有很多人不認為是内存洩漏。這是定義問題,如果你能用一個詞來更好地定義這種現象也是可以接受的。

Many share the opinion that managed memory leaks are not memory leaks at all since they are still referenced and theoretically can be de-allocated. It’s a matter of definition and my point of view is that they are indeed memory leaks. They hold memory that can’t be allocated for another instance and will eventually cause an out-of-memory exception.

Ref: dwz.date/d48U

很早之前我就看過類似的文章,把匿名方法捕獲類成員導緻延遲回收的現象定義為内存洩漏。上面引用的這篇是最近閱讀到的一篇,這位外國作者寫了很多 .NET 内存管理相關的文章,都值得一讀。

如果隻站在操作系統的角度看内存是否被掌控來定義内存洩漏,.NET 托管堆幾乎就沒有不被掌控的内存占用(托管堆之所以叫“托管”就是 CRL 會自動管理)。而之所以有人定義了托管内存洩漏,是因為對 CLR 來說,在局部視角不再需要使用的對象依然被其它實例引用,可能導緻 GC 恰巧在搜索 Root 的時候不能把這個對象所占内存分配給其它實例。對于 CLR 來說,它對托管對象有全權“托管”之責。如果在被引用期間,恰巧 GC 在搜索 Root,就會導緻 GC 錯過了一次回收該對象的機會,此次任務就“失職”了,隻能在下一次搜索時回收它。但如果使用了本地(局部)變量,就可以避免這種情況。

大部分場景,我們并不需要在意這一點性能,何況這是個概率很低的事件。但是它值得引起注意,哪怕隻有萬分之一的概率。在一些特别的場景下(比如高并發),遇到這個問題我們需要知道使用本地變量來優化我們的程序。

這個現象是不是内存洩漏,隻是個定義問題,如果覺得這個定義不妥,可以不認同這個定義。正如 @楚人Le 說的,你也可以把它定義為“空間洩漏”:

我傾向于認為這屬于内存洩漏。Wikipedia上關于Memory leak有這樣一句話:“A space leak occurs when a computer program uses more memory than necessary. In contrast to memory leaks, where the leaked memory is never released, the memory consumed by a space leak is released, but later than expected”。如果我們非常較真的話,或許可以使用“空間洩露”這個詞。當計算機程序使用超過所需的内存時,就會發生空間洩漏。與内存洩漏相比,空間洩漏所消耗的内存會被釋放,但會比預期的要晚。

這隻是個定義,這隻是個定義,這隻是個定義。不必糾結,更沒必要因為不認同就惡語相向。

今天的文章夾雜着一點情緒,請大家見諒。要說一點都不在意那些評論,那肯定是假的,心中多少還是會有些不愉悅的。面對網絡噴子,如果内心不夠強大,還真是不敢随便發表文章。這次也讓我意識到,以後有争議性的文章少寫,大家也是一樣。

自媒體很多大V都經曆過這種時段,和他們相比我這個蝦兵小卒遇到的這麼三兩次不算什麼。正如一線碼農大佬說的,有忠粉就有黑粉。既然走上這條路,必然也要經曆這些,這便是成長。

每每遇到這種事情,就特别想和鐵粉們說聲:感謝!感謝你們一路以來的陪伴、理解、支持和鼓勵,感謝你們願意和我一起學習和成長。

Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
2022款别克昂科威s1.5t使用體驗
2022款别克昂科威s1.5t使用體驗
作為一款入門級中型SUV,昂科威S在上汽通用别克SUV家族中的存在感,似乎并不如空間更大的昂科威PLUS。但身為初代昂科威的正統續作,昂科威S仍然扮演着與一衆合資緊湊型SUV展開錯位競争的産品角色。在相當長一段時間裡,全系2.0T的動力,是...
2025-11-28
正宗詠春拳創始人
正宗詠春拳創始人
萬衆矚目的功夫巨作《葉問3》将于3月4日在中國内地上映,該片以葉問晚年為背景,講述了一代豪傑落入種種困境後,通過自強不息最終成為一代宗師的曆程。在《葉問3》中,甄子丹飾演的葉問和拳王泰森的對打絕對是電影的焦點之一,尤其是甄子丹飾演的葉問,面...
2025-11-28
唐人街探案3張子楓笑容重現
唐人街探案3張子楓笑容重現
文丨阿拉丙納蘭澤自媒體編輯部相信所有完整看完《唐人街探案》的觀衆都絕對不會忘記一個畫面:張子楓飾演的思諾在片尾的邪魅一笑。這一笑,笑得人毛骨悚然、背脊發涼。盡管之後,張子楓還出演了《我們的少年時代》《小别離》《你好,之華》等多部知名影視劇作...
2025-11-28
夢幻西遊淩波城技能全點滿嗎
夢幻西遊淩波城技能全點滿嗎
夢幻西遊目前角色最高等級為175級,但玩家們努力打怪并不是為了沖到最高級,而是想提高自己的技能與屬性。無論我們玩的是哪一個等級,相信大家的目的就是提升角色輸出傷害,從而達到提高效率的目的,間接增加遊戲帶來的收益。但是每個等級的屬性極限不同,...
2025-11-28
壁挂式馬桶 優缺點
壁挂式馬桶 優缺點
随着人們生活水平的提高,對于各種衛浴産品的選擇也更加多樣化。除了在功能上大做文章外,在外形上更是下足了功夫。最近有一款比較火的壁挂式馬桶就是其一。在國外你總是能見到它的身影,在國内它的普及率也是相當高。相比傳統落地式馬桶它優點多多,但卻依舊...
2025-11-28
Copyright 2023-2025 - www.tftnews.com All Rights Reserved