我有一個C++圖形應用程序,在模型上執行繁重的計算。有一個leak or two,我已經追溯到CG和/或我的ATI顯卡(我100%確定!!)。我使用的機器有16 GB內存,而當我使用4.49 GB RAM(系統總使用率,應用程序僅使用〜1.9GB)時,vector.resize()開始返回0個新元素,並且無法調整數組的大小。爲什麼這麼快?當您的應用程序開始內存不足時,您會做什麼?
1
A
回答
3
(視窗假定)
一個32位Windows應用程序被限制到約2.0 GB的用戶模式內存(或3.0 GB如果某些引導時間參數設置)。當你的應用程序使用了1.9 GB的內存時,井就乾涸了。
參考:http://msdn.microsoft.com/en-us/library/windows/desktop/aa366778(v=vs.85).aspx#memory_limits
1
0
拋出一個異常! 當然,最好找到並蓋章泄漏,但當內存不足時:例外!要做得更好,重啓你自己的應用程序作爲迴應。
+0
這需要用'.size()'== size_you_wanted檢查包裹EVERY'.resize()',並且每個'malloc()'和'new'都必須檢查是否返回NULL。 – bobobobo
相關問題
- 1. 當您無法使用ViewState時,您會做什麼?
- 2. 當您遇到棘手的問題時,您會做什麼?
- 3. 當您擁有Rich Models時,您會做什麼?
- 4. 當您使用的圖書館不再維護時,您會做什麼?
- 5. 當您最小化應用程序時,Windows會做些什麼嗎?
- 6. 內存不足問題..應用程序開始於10MB內存
- 7. 當您在程序集中推送內存地址時會發生什麼?
- 8. 當您在開發函數時發現其他函數中的錯誤時,您會做什麼?
- 9. 當MIDL無法創建tlb時,您會做什麼?
- 10. 當您開發Android應用程序時,您獲得的錯誤列表是什麼?
- 11. 當我開始開發Java應用程序時需要做什麼?
- 12. 當您看到序列化的Java對象時,您應該想到什麼
- 13. 開發Android應用時,您的應用需要多少內存?
- 14. ,當您分配多個虛擬內核時會發生什麼?
- 15. 當您保存您的代碼時,Android模擬器是否更新您的應用程序?
- 16. 當mongodb內存不足時會發生什麼?
- 17. facebook JavaScript SDK - 當您只想使用Facebook的「Like」按鈕時,「您的應用程序ID」是什麼?
- 18. 當您的主鍵不唯一時會返回什麼
- 19. 當您返回View時應該是PartialView會發生什麼?
- 20. 我有機會知道什麼時候我的應用程序即將被系統殺死當內存不足?
- 21. 從哪裏開始將WebDAV放入您的應用程序
- 22. 當您爲同一個程序集多次調用Assembly.CreateInstance時會發生什麼?
- 23. 這段代碼爲什麼會崩潰iOS應用程序和「內存不足」?
- 24. 當您不在Flash中嵌入字體時會發生什麼?
- 25. 從其他應用程序打開您的應用程序
- 26. 當您可以使用服務時,爲什麼會使用AsyncTasks?
- 27. 當數據庫脫機時,您如何管理您的應用程序?
- 28. 在您的應用程序
- 29. VB 2013應用程序內存不足
- 30. 應用程序崩潰,內存不足
好的!在VS 2010中[Project Properties/Config/Linker/System:Enable Large Addresses = YES](http://msdn.microsoft.com/zh-cn/library/wz223b1z(VS.80).aspx) – bobobobo
這只是它。您還必須以這種方式啓動Windows引導,以便爲用戶空間保留3GB,而不是通常的2GB。執行此操作的方法因Windows的特定版本而異。 –
請參閱:http://msdn.microsoft.com/en-us/library/windows/desktop/bb613473(v=vs.85).aspx –