為什麼程式退出前還要釋放動態申請的記憶體資源

來源:互聯網
上載者:User

原文見:http://programmers.stackexchange.com/questions/140483/is-it-a-waste-of-time-to-free-resources-before-i-exit-a-process

  既然OS會在程式退出後清理資源,為什麼還需要程式員在程式退出前一個個的釋放資源?是不是沒有必要?還是OS的釋放還有不一樣的行為?

  作者強調這隻是個學術性的探討,不涉及邊界效應,編程習慣等等。

 幾個比較中肯的回答,但是這些回答大多沒有把重點放在程式退出時候,因為提問者很關心這個時間點

1.  分配和釋放的介面可以保證程式的擴充性,方便整合到更大的系統

        2 釋放的動作可以附庸

        3 去除惱人的類似purify的Waring,error

 也有人明確提出程式退出前的釋放動作是沒有意義的,因為無論如何OS會結果這些資源

 http://blogs.msdn.com/b/oldnewthing/archive/2012/01/05/10253268.aspx,這個地方有人指出 IOS 手冊指出 APP不要再退出前作清理操作而浪費電量~~~。

  但是最有很多的工程師來說,可能會習慣在退出是釋放資源,這樣可以保持一貫性,或者使工程師感覺心裡舒服些,大概。

  而且軟體是變化的,保證功能的完整性有助於擴充和維護,所以我覺得還是去手動釋放這些資源吧,除非明確有IOS這樣的特殊考慮

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.