多线程更新数据库问题

sunchen888 2005-05-08 03:54:41
小弟请教各位同仁:
这种线程问题怎么解决呢?

比如说:我在一个方法(SaveBillData)里面需要创建了3个线程用来更新数据库,它们分别

对应三个数据表(tb_a,tb_b,tb_c),每个线程中调用了同一个方法updateDatapack(),该

方法有一个返回值说明更新数据表是否成功,例如:Ret :=updateDatapack() ,if

Ret='0' then 成功,else 失败!由于需要保证事物,所以判断保存是否成功需要同时

知道三个线程的返回值才能确定,请问如何把这个三个线程的执行结果(Ret)返给

saveBillData呢?然后再由(SaveBillData)决定需要commit还是rollback.希望能说得具

体一些。
备注:Synchronize方法我用了,但是该方法是用来同步线程根VCL的,我希望在调用

(SaveBillData)时,三个线程A,B,C执行结束完能把Ret返给(SaveBillData)然后

(SaveBillData)再接着往下处理。现在问题是等三个线程执行完以时,方法

(SaveBillData)也早就执行完了。用什么方法能让(SaveBillData)挂起,等三线程执行

完后(SaveBillData)再继续。谢谢
...全文
179 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
niutuoshaozhe 2005-05-09
  • 打赏
  • 举报
回复
我也想知道

1,593

社区成员

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

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