ODBC对多线程支持不好吗?我难以理解, --- 鸡毛信!!!急!

sunny_98 2003-03-10 04:14:00
环境:
服务器 windows nt server 4.0 sp5
客户机 windows 98 se
数据库 sql server 7.0 sp3
开发工具 vc 6
问题:
我的程序需要24小时不间断运行.
程序最初是单线程的,使用MFC ODBC类CDatabase创建的单个数据库连接访问数据库,一直很稳定
后来改成了多线程,程序会经常出现"超时,过期",或者"一个m_hstm占线导致另一个"(信息不全)等访问数据库出错的问题,根据错误提示,我在访问表的时候采用需要时申请HSTMT用完即释放,发现没有什么效果,后来,我采用数据源连接池的方法,才使得出错的频率大大下降,仍没杜绝(注,由于有多个客户机访问数据库,所以现在已有10多个连接同时连到数据库),我想干脆为每个线程分配一个数据库连接,不知能否彻底解决问题?有没有更好的方法?
我觉得sql server不是声称支持多线程的吗,怎么会这样,是不是我错了,错在哪里呢?
希望各位大侠指教,谢谢
...全文
148 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
littlechen 2003-05-20
  • 打赏
  • 举报
回复
不要意思,发错地方了

抱歉!
littlechen 2003-05-20
  • 打赏
  • 举报
回复
我要用的是Postgres数据库,在这个没有配置要之前我也曾用access来调试自己的程序,发现Access对于多线程的支持实在是很差,它并不只能建立一个连接,但是多个线程对其操作时的总体速度只有单个线程的十分之一,简直不能忍受。所以出现Timeout之类的错误是很正常的,建议你换个数据库。
sunny_98 2003-03-13
  • 打赏
  • 举报
回复
再up
sunny_98 2003-03-12
  • 打赏
  • 举报
回复
aben456,谢谢,我这就去看看
问题是我在程序中测试过,我的用户界面用的数据库连接只有该界面线程使用时,没有发生错误,而改为多个线程使用时,就会出现我所说的错误,所以,我认为连接与线程可能具有相关性
chenybin 2003-03-12
  • 打赏
  • 举报
回复
UP,
sunny_98 2003-03-11
  • 打赏
  • 举报
回复
回 richestbeggar(richestbeggar) :
这些数据源连接总是会在较短的时间内重用(1-10分钟),所以我就没有使用前申请,使用后立即释放的方法,而是用连接池.我也想实在不行,干脆一个线程一个连接.
回_liang_(liang) :
并发性是肯定考虑了的
如果不采用一个线程一个连接,那么还有一种方法,就是将对数据库的操作串行化,即用一个窗口(消息循环)来封装它,但这种方法改动量要大些,我想如果一个线程一个连接可以解决这个问题,我就不想这样改了.
另外,我总是奇怪,sql server 对多线程支持不好?不会吧!sql server不支持snapshot方式下的写表操作,为什么?
aben456 2003-03-11
  • 打赏
  • 举报
回复
其实不在于你连接数的多少,连接是可以重复使用的
这样还可以节省不少时间的
aben456 2003-03-11
  • 打赏
  • 举报
回复
ODBC多线程并发处理数据时,有时会产生“塞车“现象
参考:

http://expert.csdn.net/Expert/topic/1151/1151922.xml?temp=.7826959
sunny_98 2003-03-11
  • 打赏
  • 举报
回复
UP
_liang_ 2003-03-10
  • 打赏
  • 举报
回复
sql server 连接几百个客户端都没问题,最多多少我不知道,你才练了十来个
不知道你怎么做的,我感觉联数据库用多线程,没必要吧。这个“多线程”应该是
sql server的任务
_liang_ 2003-03-10
  • 打赏
  • 举报
回复
会不会时进行多线程操作时引起数据库的访问冲突,你有没有考虑并发性问题
数据的世界 2003-03-10
  • 打赏
  • 举报
回复
我感觉最好是每一个线程分配一个数据库链接,而且只在线程需要访问数据库的时候,分配一个数据库链接。用之后马上关闭
zhaolaoxin 2003-03-10
  • 打赏
  • 举报
回复
up
sunny_98 2003-03-10
  • 打赏
  • 举报
回复
请大侠帮帮忙,最近该系统3天左右就要出错,比以前的频率高了,是数据量大的原因吧

4,011

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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