即使在彈出qInt隊列中的所有元素之後,以下代碼仍未釋放3000個元素的內存消耗。是什麼原因 ?std ::隊列內存消耗導致內存泄漏 - C++?
std::queue<int> qInt; //Step01: Check the running memory
for (int i=0;i<3000;i++)
{
qInt.push(i);
}
//Step02: Check the running memory it should have been increased
while(!qInt.empty())
{
qInt.pop();
}
//Step03: Check the running memory expecting Step01 memory but it is still the same of Step02
您是否使用任務管理器檢查內存消耗? – Borgleader
@Borgleader當然是 – Carthi
你永遠不知道,你可能會推3000多個項目進入該隊列。如果您希望釋放堆內存的最佳機會爲即將到來的假設做好準備,請將其與本地空閒自動交換。 – WhozCraig