关于 Timer控件和线程的问题~~~~~

m0_37551303 2019-05-23 09:01:23
小弟我想在一个Timer控件控件里执行一个TThread.CreateAnonymousThread匿名线程,可是我感觉这样是有问题的。比如说Timer控件5秒执行一次,可是线程还没执行完。此时Timer又启动一个线程。小弟本想在线程内控制Timer的开关,线程开始时关闭Timer,线程结束时再打开Timer。可是这样会导致其他的Timer内存地址错误。

现在想请教大大们,Timer内如何执行线程做到同步。
...全文
103 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
m0_37551303 2019-05-24
  • 打赏
  • 举报
回复
引用 1 楼 doloopcn 的回复:
procedure Timer1OnTimer(Sender:TOBject);
begin
TTimer(Sender).Enable:=False;
aThread.Start;
end;

.......
你的Thread执行完成

Timer1.Enable:=True;
感谢大大,我已经用Timer检测了线程类是否存在解决了。但是还是要谢谢您。
doloopcn 2019-05-24
  • 打赏
  • 举报
回复
procedure Timer1OnTimer(Sender:TOBject);
begin
TTimer(Sender).Enable:=False;
aThread.Start;
end;

.......
你的Thread执行完成

Timer1.Enable:=True;

1,183

社区成员

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

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