有关thread的疑惑

sdnme 2008-03-16 12:22:04
我想在buttonStart.click里创建5个线程MyThread,用于并行处理5个串口收到的数据,并且并行地对5个目标进行控制,而且控制过程分为两个阶段,五个线程执行的结束条件是被控制的目标都到达了预定的状态,在线程都结束也就是目标都到达预定状态之后,将进行下一步的操作。为此,我在MyThread里用两个repeat..until来实现,每个repeat..until可能持续较长时间,不知道这样是否可行?
...全文
99 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
appley 2008-03-22
  • 打赏
  • 举报
回复
可以用 但是每次收到数据后要sleep(2)
火龙岛主 2008-03-22
  • 打赏
  • 举报
回复
sleep也就是线程等待
线程同步也是你需要的
ydlchina 2008-03-16
  • 打赏
  • 举报
回复
关注
gjw310 2008-03-16
  • 打赏
  • 举报
回复
关注..学习
jadeluo 2008-03-16
  • 打赏
  • 举报
回复
TThread有个OnTerminate事件, 你可以利用它。
sdnme 2008-03-16
  • 打赏
  • 举报
回复
在线程都结束也就是目标都到达预定状态之后,将进行下一步的操作,是用WaitFor好呢?还是PostMessage给frmMain,让frmMain.HandleMessage去判断是不是所有线程都结束了?
jadeluo 2008-03-16
  • 打赏
  • 举报
回复
在线程的repeat...until的循环体中加上Sleep(1)就行了。

1,593

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 网络通信/分布式开发
社区管理员
  • 网络通信/分布式开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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