CPP記憶體洩露到底有多大的危害

時間 2021-05-30 03:37:47

1樓:Mirror

做水波紋桌布,需要獲取桌布層的DC,當初圖省事一直GetDC直接當引數使用,剛開始沒啥事,執行時間一長就很卡,滑鼠什麼的都很卡,最後除錯時盯著執行記憶體,又盯著任務管理器找原因,後來意識到有地方記憶體沒處理好,最後定位到了那。因為雖然每秒獲取的DC有幾十次,但記憶體增長很慢,最後才想起來獲取DC要釋放

2樓:W3nl1nG

我覺得Chrome瀏覽器大概是有記憶體洩漏的,我開幾十個tabs不關,幾天之後可能就會卡了。

每次卡都要關左右瀏覽器再重開,挺煩人的。

3樓:undefined

對於大多數程式來說,記憶體洩漏本身的危害主要是兩點,一是週期性的記憶體洩漏會導致程式在長期執行後的某個時間點崩潰,二是大量記憶體洩漏會導致作業系統無記憶體可用。

所以一般來說,如果你的程式只是短時執行,並且執行期間不會申請大量記憶體,那麼記憶體洩漏的確沒什麼危害。

但是如果你的程式是乙個守護程序,其生命週期和init一樣長呢?或者說你是systemd的開發者之一,init崩潰會導致kernel panic呢?又或者,你是核心開發者之一,核心發生的任何記憶體洩漏會伴隨整個生命週期直到重啟呢?

所以關鍵位置和守護程序是絕對不允許週期性和大量記憶體洩漏的。

就第一點來說,乙個不應被繼續使用的物件沒有被釋放,會導致指向該物件的弱引用依然生效,因此持有弱引用的模組可能會做出錯誤行為,而這種錯誤行為甚至不會引發執行時錯誤,這可能會導致錯誤結果。類似這種因為記憶體安全而造成的錯誤結果比segfault更難以排查,比use-after-free更棘手。

4樓:rileyye

乙個極端的例子

#include

intmain

()catch

(std

::bad_alloc)}

}每次洩露乙個int, 積少成多, 最終吃光記憶體。

手機的危害到底有多大?

Jarvis003 理解,手機已經從以前人們的工具變成了人們的生活了,沒有它不行。現在乙個電腦就可以工作,你甚至能邊旅遊邊處理工作內容。乙個手機就可以生活,可以宅在家裡一天,吃喝不愁,還有娛樂節目。手機為我們提供太多便利的同時也在毒害我們,以前我也是深受它的毒害,看個書都想用手機看。但是現在慢慢的調...

女生吸菸的危害到底有多大?

瀉藥。吸菸有害健康,所以不存在危害到底有多大這個說法。但最顯而易見的壞處就是,只要一開始抽菸。你就肯定是口臭!抽菸越久口臭越猛!本來很多女生不注意個人衛生就口臭嚴重了,你再想想疊加個抽菸的口臭 已重置 在中國吸菸的女性非常的多,而吸菸的女性在懷孕的時候會出現併發症,畢竟菸鹼和尼古丁是會導致身體裡所有...

夜貓子作息對身體到底有多大危害?

衣衣 首先,身陳代謝會被打亂,如糖尿病,心血管病等 其次,會直接影響腸胃吸收功能,引起各種腸胃消化疾病 再次,會影響機體免疫功能,會頻繁感冒,牙痛等各種炎症 最後,會減弱肝臟的解毒功能。 乙索 人是跟著太陽走的,所以俗話講,人活一口氣,這口氣就是陽氣。陽氣越旺,身體越健康。白天,也是隨著太陽公升起,...