• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            春暖花開
            雪化了,花開了,春天來了
            posts - 149,comments - 125,trackbacks - 0
             

            什么是內存泄露

            內存泄露是一種實現錯誤。它將會慢慢耗盡系統內存空間。當計算機運行進程的時候,可能需要或多或少的內存。這主要以來于進程每時每刻將要執行的命令。當進程需要更多的內存時,將給操作系統提出請求。當進程不再需要內存的時候,將會把內存釋放掉,還給操作系統。這樣其他進程才可以使用。如果進程沒有正確的將內存還給操作系統,盡管它不再使用,但是內存的狀態仍然是不可再分配。這將減少可用內存。

            一般我們常說的內存泄露是指堆內存的泄露。堆內存是指程序從堆中分配的,大小任意的(內存塊的大小可以在程序運行期決定),使用完后必須釋放的內存。應用程序一般使用mallocreallocnew等函數從堆中分配到一塊內存,使用完后,程序必須負責相應得調用freedelete釋放該內存塊,否則,這塊內存就不能再次被使用,我們就說這塊內存泄露了。

            對于一些界面的資源,如window的創建,menu的創建,dc的創建等等,對于這些,我們需要在不使用它們的時候,調用相應的函數,進行釋放。否則也將會造成內存泄露。

            內存泄露的后果

            內存泄露會因為減少可用內存的數量從而降低計算機的性能。最終,在最糟糕的情況下,過多的可用內存被分配掉導致全部或部分設備停止正常工作,或者應用程序崩潰。

            內存泄露可能不嚴重,甚至能夠被常規的手段檢測出來。在現代操作系統中,一個應用程序使用的常規內存在程序終止時被釋放。這表示一個短暫的應用程序中的內存泄露不會導致嚴重后果。

            在以下情況下,內存泄露導致較嚴重的后果:

                    一是程序運行后置之不理,并且隨著時間的流失消耗越來越多的內存(比如服務器上的后臺任務,尤其是嵌入式系統中的后臺任務,這些任務可能被運行后很多年內都置之不理);

                    二是新的內存被頻繁的分配,比如當現實電腦游戲或動畫視頻畫面時;

                    三是程序能夠請求未被釋放的內存(比如共享內存),甚至是程序終止的時候;

                    四是泄露在操作系統內部發生;

                    五是泄露在系統關鍵驅動中發生;

                    六是內存非常有限,比如在嵌入式系統或便攜設備中

                   七是當運行于一個終止時內存并不自動釋放的操作系統治上,而且一旦丟失,只能通過重啟來恢復。

            在這里,我著重強調一下嵌入式系統,由于系統內存非常有限,編寫應用程序的時候,一定要防止內存泄露的發生。如果發生,可能是會使你編寫的應用程序出現異常。或者你的系統的性能將會大大降低。甚至有時你不得不依靠重起系統來恢復。

            內存泄露的檢測
            檢測內存泄露的工具:debugnew
            http://dev.csdn.net/article/58/58407.shtm
            淺談內存泄漏(二)
            http://www.vczx.com/article/show.php?id=68

            一個跨平臺的 C++ 內存泄漏檢測器

            http://www-128.ibm.com/developerworks/cn/linux/l-mleak2/index.html
            內存泄露檢測
            http://www.shnenglu.com/Ipedo/archive/2005/10/27/867.aspx

            posted on 2008-11-02 10:50 Sandy 閱讀(379) 評論(0)  編輯 收藏 引用 所屬分類: windows學習
            亚州日韩精品专区久久久| 熟妇人妻久久中文字幕| 青春久久| 久久99国产乱子伦精品免费| 成人a毛片久久免费播放| 久久成人国产精品免费软件| 久久99精品久久久久久hb无码| 久久精品国产一区二区三区不卡| 无码超乳爆乳中文字幕久久 | 久久综合国产乱子伦精品免费| 久久亚洲国产精品一区二区| 久久99九九国产免费看小说| 国产精品久久久久久搜索| 麻豆精品久久久久久久99蜜桃| 久久综合九色综合久99| 漂亮人妻被黑人久久精品| 亚洲欧洲久久久精品| 亚洲国产精品久久| 久久99热只有频精品8| 久久精品国产欧美日韩99热| 久久久久久久国产免费看| 欧美777精品久久久久网| 国产精品久久亚洲不卡动漫| 中文字幕久久久久人妻| 久久这里都是精品| 久久亚洲精品无码aⅴ大香| 久久久久亚洲av成人无码电影| 亚洲嫩草影院久久精品| 亚洲国产精品久久66| 久久精品中文字幕久久| www.久久热.com| 久久狠狠色狠狠色综合| 伊人色综合久久| 久久99精品久久久久久野外| 伊人丁香狠狠色综合久久| 久久91精品综合国产首页| 国产精品一区二区久久精品无码| 久久996热精品xxxx| 亚洲欧美另类日本久久国产真实乱对白| 久久精品国产亚洲Aⅴ蜜臀色欲| 国产成人精品久久一区二区三区av|