【发布时间】:2025-12-07 09:45:01
【问题描述】:
我正在阅读一本书 Efficient C++: Performance Programming Techniques 作者对全局 new 和 delete 运算符的看法如下:
它们在进程上下文中管理内存,并且由于进程可能 产生多个线程,
new()和delete()必须能够在 多线程环境。另外,内存请求的大小 可能因一个请求而异。
在第 6 章。单线程内存池。
这是真的吗?我认为 C++ 没有多线程环境的概念,程序员需要处理的是通过使用某种互斥方式。
【问题讨论】:
-
你的问题呢?这将如何实施?
-
@*foe Book 进一步提供了单线程和多线程支持的内存分配实现,但是当我尝试他的第一种方法时,它在 Visual Studio 编译器上失败了,所以我有疑问。
标签: c++ multithreading new-operator