VB好像是可以吧。
C不太清楚。

解决方案 »

  1.   

    多个线程同事用一个ADO是否会出现问题?
      

  2.   

    “用C++开发SQL Server”是什么意思呢?ADO引擎本身是单独线程的,即使你用多个线程每一个分别创建自己的对于ADO的引用,你的机器上的ADO引擎其实是独立的“进程外服务器”,而且它是单线程的。或许最新的 ADO 有所改变。你按我的思路去查一下资料吧!
      

  3.   

    即使是不同进程(不同的exe程序)使用ADO,这些程序也必须在ADO面前排队,ADO要处理完一个查询才会处理下一个。这对于本地数据库处理是非常精简快捷的,对于网络则由于数据锁碰撞(很高)问题变得非常低效。
      

  4.   

    Sorry!受到一些人的干扰,我把 ADO 看成 DAO 了!ADO 如果是通过 ODBC 来完成的,其本身当然是多线程的。
      

  5.   

    ado不是多线程的,他是每次都创建他的一个实例,进行引用。ok
      

  6.   

    可能我没有表达清楚我的意思是先创建ADO的Connection(因为Connection是很占用时间的),然后在应用程序中,多个线程同时调用这个connection,进行数据操作,是否这样做可以?如果多个线程不能同事调用(引用)一个ADO的Connection(就是一个线程只能调用一个ADO的Connection),只好做Connection的Pool了。
      

  7.   

    好久没接触过ADO了!做是可以这样做,但是这个对象应该不是“线程安全的”,也就是你这样做的程序可能经常出(运行时)故障,即使不出故障得到的运行结果也可能“莫名其妙”会乱。独立声明connection并且各自打开各自的连接不好吗?
      

  8.   

    你的程序很可能一会能运行,一会又会报告“已经被使用,必须close”之类的错误。
      

  9.   

    大家都知道建立一个connection是需要花费很多时间时间的,尤其是在频繁的小数据量处理中。我的程序设计思路是这样的:
    1。程序启动,建立一个ADO的connection
    2。创建线程池,如果有数据要处理,则引用上面的connection
    3。程序退出,close connection这样不行吗?
      

  10.   

    1。程序启动,建立一个ADO的connection
    2。创建线程池,如果有数据要处理,则引用上面的connection
    3。程序退出,close connection
    当然可以!
    你的问题不是多线程问题,是一个连接对象被多个ADO对象引用.