• <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 閱讀(377) 評論(0)  編輯 收藏 引用 所屬分類: windows學習
            久久国产成人| 久久美女网站免费| 奇米影视7777久久精品人人爽| 青春久久| 国产欧美一区二区久久| 日韩精品无码久久一区二区三| 伊人久久大香线蕉综合网站| 日韩精品久久久久久免费| 欧美伊香蕉久久综合类网站| 亚洲精品无码久久久| 久久精品水蜜桃av综合天堂| 999久久久免费国产精品播放| 久久婷婷午色综合夜啪| 国产成人无码精品久久久久免费| 欧美黑人激情性久久| 国产综合精品久久亚洲| 久久人人爽人人爽人人片AV不| 久久男人AV资源网站| 久久久久久亚洲精品成人| 久久精品青青草原伊人| 久久精品一区二区影院| 99久久亚洲综合精品成人| 久久精品国产亚洲av高清漫画| 久久夜色撩人精品国产小说| 久久亚洲国产午夜精品理论片| 久久久久99精品成人片欧美| 性做久久久久久久久久久| 99久久久久| 激情五月综合综合久久69| 久久99国产精品99久久| 久久精品九九亚洲精品天堂| 久久午夜无码鲁丝片| 久久久噜噜噜久久熟女AA片| 久久狠狠爱亚洲综合影院| 噜噜噜色噜噜噜久久| 亚洲国产成人久久综合区| 久久这里只有精品首页| 久久国产欧美日韩精品| 一本色道久久88精品综合| 亚洲精品高清国产一线久久| 亚洲国产精品成人久久|