在Linux上,如果內存不足,malloc不一定會返回空指針。如果你真的內存不足,你可能會得到一個指針,然後讓OOM殺手開始進食。對於C++的操作符new也是如此,或者你會得到bad_alloc異常嗎?linux上運算符new和bad_alloc
3
A
回答
4
同樣是真實的運營商新的,唉。^(
7
這是一個內核函數,而不是一個語言功能 - 你可以用vm.overcommit_memory
和vm.overcommit_ratio
的sysctl控制它
他們是可見在proc文件系統中,在/proc/sys/vm/overcommit_memory
和/proc/sys/vm/overcommit_ratio
之間。
相關問題
- 1. C++:結構,運算符「new」和const
- 2. STL分配器和運算符new []
- 3. 綁定運算符new?
- 4. 使用new運算符,請
- 5. 使用new運算符與變量
- 6. 用'new []'運算符分配內存
- 7. void *在malloc與運算符new
- 8. 快速new運算符的問題
- 9. 重載new運算符與WDK
- 10. 運算符new(n)與新的unsigned char [n]進行放置new
- 11. 在傳遞給函數的參數上調用new運算符
- 12. 運算符new是否分配在THREAD堆上?
- 13. 爲什麼new [-1]產生段錯誤,而new [-2]產生bad_alloc?
- 14. 運算符new/delete和類層次結構
- 15. 如何在共享內存中使用運算符`new`和`delete`?
- 16. 我可以使用全局運算符new作爲運算符new重載的類嗎?
- 17. |運算符,++和I運算符
- 18. 運算符===和||
- 19. 在Linux和Windows上的算術運算執行速度
- 20. DocumentBuilderFactory和運算符
- 21. 和Python列表上的運算符
- 22. stat()和&符號運算符
- 23. Java中new運算符與newInstance()的性能
- 24. C++ new []運算符的最大索引是多少?
- 25. 「object.new」是如何工作的? (Java是否有.new運算符?)
- 26. SlimReaderWriter(SRW)鎖陣列(使用new運算符)
- 27. 使用依賴性重載類運算符new
- 28. 用new運算符創建多少個對象?
- 29. 用戶定義的運算符new返回空指針
- 30. 如何使用UML表示C++ new()運算符
當操作系統在說謊時,C++運行時並不是很多。 – MSalters