可能重複:
How to downsize std::vector?
C++ vector::clear如何從std :: vector中恢復內存?
當我打電話與大尺寸有些矢量vector<double>::clear()
,我沒有看到內存返回到系統中的任務管理器/性能。
顯然這是因爲容器expects you will use that same memory again。我不打算再次使用該內存,一旦任務完成,內存將更好地返回到系統。
是否有辦法確保立即內存返回到系統,除/使用像vector<double> * v
指針調用v
delete
,當我們想要的記憶又回到了這個系統?
已經問[C++向量::明確] [1] [1]:http://stackoverflow.com/questions/3477715/c-vectorclear – Andrew
你真的不應該使用任務管理器這一點。 – 2012-01-26 16:11:22
幾乎所有人都回答這個問題只會讓'vector'將內存釋放回內存分配器。您的標準庫和操作系統何時將未分配的內存從進程中釋放回系統時使用的標準完全是另一回事,所以即使它運行正常,您也不一定能夠在任務管理器中看到它。 –