Midas客户端中使用多线程出错的解决

博客分享了Midas客户端中使用多线程出错的解决办法。在thread里创建的ClientDataset Open时无异常且不返回,原因在于多层数据库系统中,客户端取远程数据控件的Active设置及SocketConnect连接组件。解决方法是在线程中自动创建Socket连接组件,将数据集组件指向它,线程结束时释放。

Midas客户端中使用多线程出错的解决

看到有人在问这个问题,所以贴出来,以前我也碰到了该问题,整了好久才找到解决方法。
--------------------------------------------------------------
今天遇到个问题,在一个thread里创建的ClientDataset总是在Open的时候死掉,也不抛出任何异常,就那么一直不返回。早知道midas不是线程安全的,特地到线程中才创建ClientDataSet和它的RemoteServer,想不到这样也不行啊。不能用在线程里这可就麻烦了,唉!
--------------------------------------------------------------

多层数据库系统中,客户端中不能把取远程数据的控件如Table、Query、ClientDataset的Active设置为True或False或Open...

原因是出在SocketConnect连接组件上,

解决方法:在线程中自动创建一个Socket连接组件,再把数据集组件指到该新的Socket连接组件(最好是在子线程中也新建数据集组件)。线程结果时再释放。

评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值