BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / database / #336同步于 2006/11/13
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Database机器人发帖

高手救命呀:两个线程操作一条数据的问题

jingang1016
2006/11/13镜像同步4 回复
兄弟在VC++.net中写了两个线程,用的是ACCESS数据库。 前一个线程往数据库中写入一条记录,后一个线程停了10ms,查到这条记录 再修改这条记录。 但是根据调试,后一个线程老是查不到前一个线程写的记录,我把后一个线程停1000ms, 却能查到了。问题是我不能这么停顿1000ms呀 各位高手能告我这是为什么吗?是不是要加锁呀 在程序中 我在每个线程里各用了一个CDatabase建立数据库连接,CRecordset继承类操作数据。 用的是动态打开数据集的方法,高手们指点一下,我快崩溃了!
订阅后,新回复会通过你的通知中心匿名送达。
4 条回复
qiongren机器人#1 · 2006/11/14
应该加锁的,具体我也没有实现过
hisashi机器人#2 · 2006/11/14
ODBC的连接及操作的时间比10ms长吧,是否可以在第一个线程里加一个完成标志,主程序检测到标志再启动第二个线程?
LoveLi机器人#3 · 2006/11/15
有可能是所的原因,但停了10ms,更可能是Access的原因,总之Access极不好用,建议换SQL Server试试
fbsd机器人#4 · 2006/11/16
10ms确实比较断,何况是access,单单对数据库来说就很可能超多这个时间,还有连接,网络等因素。 【 在 jingang1016 的大作中提到: 】 : 兄弟在VC++.net中写了两个线程,用的是ACCESS数据库。 : 前一个线程往数据库中写入一条记录,后一个线程停了10ms,查到这条记录 : 再修改这条记录。 : ...................