多线程 – 在Delphi7中在不同的线程中分配和释放内存

我有一个带有两个线程的delphi7程序.如果我使用new()在第一个线程中分配内存,我可以在另一个线程中使用dispose释放它吗?我也在使用fastMM
最佳答案
是.动态内存在进程中的所有线程之间共享.

您必须确保IsMultiThread全局变量在早期阶段设置为True.使用TThread或BeginThread创建线程会将IsMultiThread设置为True.如果您知道您的代码使用线程,那么您也可以在初始化期间明确地将IsMultiThread设置为True.

显然,在开始释放之前必须完成分配.

转载注明原文:多线程 – 在Delphi7中在不同的线程中分配和释放内存 - 代码日志