关于串口通信控件的关闭问题,希望各位出点力,不甚感激!(200分)

F

finewei

Unregistered / Unconfirmed
GUEST, unregistred user!
问题是:
本人使用TCOMPORT控件编程过程中,有COMPPORT1,COMPORT2 两个对象,它们是共用一个串口
先COMPORT1。CLOSE可以成功执行,然后, 执行COMPORT2.OPEN, 最后在执行comport2.colse;
出现卡住,不能往下执行,单步跟踪后发现是在执行该控件本身的程序中执行到继承线程DESTORY时出现不能
往下执行的现象,请问各位对线程继承destory有什么要求,为什么会出现这种现象?如何解决!
 
你可以看控件的源代码,每OPEN一次,控件建立一个线程用于监视串口状态,还有读写
串口都是在多线程中处理,关闭时控件会释放多线程。出现这种现象的原因是你的串口接收
或发送事件没有正常退出,你可以检查你的串口接收,发送事件,不要在这些事件中做比较
费时的工作,或者定义标志,随时退出
 
to Wang_JunFan
谢谢你对这个问题的关注,其实这个问题早就已经解决了,跟你说的差不多道理了。但是
一个件事情让我很奇怪难道是问题太简单,还是很少有人在用这个控件,这么长时间了,却
只有你一个人在回答这个问题。
 
接受答案了.
 
可能是很少人用这个软件吧,大部分人用SPCOMM,因为COMPORT控件有一些缺陷,如串口
打开后不能改变状态,必须先关闭再改状态等,不知道它的最新版本是否修改了这些缺陷
 
可能你说得有道理吧,想跟你结个哥们,留个联系方法可以吗?
 
QQ:48289169
email:wang_junfan@163.net
 

Similar threads

D
回复
0
查看
892
DelphiTeacher的专栏
D
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
I
回复
0
查看
597
import
I
I
回复
0
查看
585
import
I
顶部