多线程的问题

wangran 2004-07-05 09:43:48
我正在参与一个测试程序编写,是第一次使用c++ builder,很多方面都搞不清楚。现在我的一个对话框里的一个菜单函数用到了一个需要很长时间的循环,这样就导致了在运行这个函数时对话框不能拖动,界面也花掉了,有点像没有响应的现象,同事建议我用多线程,我一点头绪都没有,在此请教了。
...全文
205 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
lidawen 2004-09-07
  • 打赏
  • 举报
回复
定义函数
DWORD CALLBACK Thread_function (void *P)
{
//處理事務
}
//定義縣程
HANDLE hThread;
hThread = CreateThread(NULL,NULL,Thread_ function,NULL,
CREATE_SUSPENDED,NULL);
ResumeThread(hThread);
wang_j_p 2004-09-07
  • 打赏
  • 举报
回复
循环内部加
Application->ProcessMessages();
cchao 2004-09-06
  • 打赏
  • 举报
回复
Application->ProcessMessages()
使系统能抽出空来处理其他消息,很好的方法
但是你要是还需要做别的事情的话还是写个线程保险点
gyj_china 2004-07-08
  • 打赏
  • 举报
回复
用线程固然是好,但有很多循环没有必要用线程。写个简单的线程还是挺容易的。
你还是在循环中加上
Application->ProcessMessages();
Maconel 2004-07-05
  • 打赏
  • 举报
回复
在循环中加入
Application->ProcessMessages();
即可,它的作用是将操作权交回系统,这样就可以避免在长时间循环中使程序死掉。
zcchm 2004-07-05
  • 打赏
  • 举报
回复
你这种情况没有必要用多线程,支持楼上

1,221

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder Windows SDK/API
社区管理员
  • Windows SDK/API社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧