BCB中的一个关于局部创建在堆上的线程释放
时间:2011-12-12
来源:互联网
写了一个BCB的线程
创建了一组局部对象
请问设置FreeOnterminated=true,线程结束后,是否不需要做释放处理,会自动释放
我代码是如此的
线程代码:__fastcall TWorkerThread::TWorkerThread()
: TThread(true)
{
FreeOnTerminate = true;
//Resume();
m_pWorkerSection = new TCriticalSection();
m_pWorkerEvent = new TEvent(NULL, false, false, DEFAULT_EMPTY);
m_pRecorderThread = new TRecorderThread();
this->InitialPipe();
}
调用代码:
vector<TWorkerThread*> vecDelThread;
for (int i = 0; i < iCount; ++ i)
{
vecDelThread.push_back(new TWorkerThread());
}
请问这组线程需要显示写代码释放吗?怎么释放?
创建了一组局部对象
请问设置FreeOnterminated=true,线程结束后,是否不需要做释放处理,会自动释放
我代码是如此的
线程代码:__fastcall TWorkerThread::TWorkerThread()
: TThread(true)
{
FreeOnTerminate = true;
//Resume();
m_pWorkerSection = new TCriticalSection();
m_pWorkerEvent = new TEvent(NULL, false, false, DEFAULT_EMPTY);
m_pRecorderThread = new TRecorderThread();
this->InitialPipe();
}
调用代码:
vector<TWorkerThread*> vecDelThread;
for (int i = 0; i < iCount; ++ i)
{
vecDelThread.push_back(new TWorkerThread());
}
请问这组线程需要显示写代码释放吗?怎么释放?
作者: jackiectrip 发布时间: 2011-12-12
FreeOnterminated=true;//仅仅是在结束时清除线程自身
如果线程中有new,最好在线程结束前delete掉
如果线程中有new,最好在线程结束前delete掉
作者: bigfog 发布时间: 2011-12-12
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28