可能重复:
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'将内存释放回内存分配器。您的标准库和操作系统何时将未分配的内存从进程中释放回系统时使用的标准完全是另一回事,所以即使它运行正常,您也不一定能够在任务管理器中看到它。 –