社区
Delphi
帖子详情
线程问题,很简单的……
shgye121212
2003-07-01 04:35:17
我编了一个程序,自己定义了一个Ttime_thread类(from:Tthread)
我想实现自动数据采集和手动数据采集,手动的优先级高于自动的,
我的设计思路如下:
在主程序中,点击‘启动’——>自动采集(timer1每定时一秒,去输入缓冲区取一次数据)。主程序中还有动画在运行。然后点击‘手动采集’——>挂起‘自动’——>输出命令——>等待接收发送成功的消息——>等待接收数据——>“手动”挂起——>‘自动’启用。
我不知道该怎么实现!
请大虾帮忙,不胜感激!!!
...全文
37
6
打赏
收藏
线程问题,很简单的……
我编了一个程序,自己定义了一个Ttime_thread类(from:Tthread) 我想实现自动数据采集和手动数据采集,手动的优先级高于自动的, 我的设计思路如下: 在主程序中,点击‘启动’——>自动采集(timer1每定时一秒,去输入缓冲区取一次数据)。主程序中还有动画在运行。然后点击‘手动采集’——>挂起‘自动’——>输出命令——>等待接收发送成功的消息——>等待接收数据——>“手动”挂起——>‘自动’启用。 我不知道该怎么实现! 请大虾帮忙,不胜感激!!!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
seachange
2003-07-01
打赏
举报
回复
可以设三种线程,基线程定义公用的方法和变量,再有一个定时线程一个手动线程,定时线程执行时检测时间到了并且手动没有干预,则执行定时流程,手动线程在手动控制确定后开启,线程执行时先KIll或暂停定时线程。
aiirii
2003-07-01
打赏
举报
回复
我的思路是如下:
将采集的部分,单独做成个模块,至于,模块是用线程,还是什么实现,不在这里讨论,原理一样;
该模块可接收控制(消息,信号量..),接到控制,就采集一次;注意要处理上次通信未结束,就收到新的控制的情况;
然后,用个timer控件做定时控制,在button中也同样做手动控制,两边代码应该是一样,或差不多的
myling
2003-07-01
打赏
举报
回复
是呀,我觉得你这个称不上个线程问题
用timer的话,直接判断状态,然后分别执行就行了
改变状态岂不是很简单?
firetoucher
2003-07-01
打赏
举报
回复
1 为什么要用两个线程?感觉你的手动和自动功能差不多,而且不可能同时进行的阿
2 你可以用互斥体来实现event, segment等等来实现同步阿
上海老李
2003-07-01
打赏
举报
回复
呵呵,什么呀,你直接用线程去采集,不用TIMER控件,然后就可以用线程来实现了,何必加TIMER?用线程实时性好,你如果用TIMER,可以不用线程了,只要让TIMER.Enable:=true or False就行了!
wisenowa
2003-07-01
打赏
举报
回复
呵呵,你的问题太笼统了吧?
单看你的工作流程很简单呀。
Windows程序设计
……………………
线程
区域储存空间(TLS) 21. 动态链接库 …………………… 动态链接库的基本知识 …………………… 各式各样的DLL讨论 22. 声音与音乐 …………………… WINDOWS和多媒体 ……………………...
windows程序设计第五版 chm 版本
……………………
线程
区域储存空间(TLS) 21. 动态链接库 …………………… 动态链接库的基本知识 …………………… 各式各样的DLL讨论 22. 声音与音乐 …………………… WINDOWS和多媒体 ………………...
Windows 程序设计 chm
……………………
线程
区域储存空间(TLS) 21. 动态链接库 …………………… 动态链接库的基本知识 …………………… 各式各样的DLL讨论 22. 声音与音乐 …………………… WINDOWS和多媒体 ………………...
windows 程序设计中文书
……………………
线程
区域储存空间(TLS) 21. 动态链接库 …………………… 动态链接库的基本知识 …………………… 各式各样的DLL讨论 22. 声音与音乐 …………………… WINDOWS和多媒体 ………………...
Delphi
5,939
社区成员
262,944
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章