因为我使用ADO时经常出错(多个线程里使用了多个_ConnectionPtr,每个_ConnectionPtr对应一个_RecordsetPtr),听别人说最好使用一个全局的ADO,各线程使用它时使用临界区访问,但是有个问题:执行SQL后,_RecordsetPtr里的数据可能需要等会才取出,这意味着别的线程只有干等了,怎样解决这个矛盾嘛,或者有什么好的方法?

解决方案 »

  1.   

    可不可以一个_ConnectionPtr控制许多_RecordsetPtr? 可以他们没有关系其实,你进行,插入,删除的时候,都不需要_RecordsetPtr直接执行sql语句,只是在查询的时候,用_RecordsetPtr就可以了
      

  2.   

    一个_ConnectionPtr,多个_RecordsetPtr,用数据锁locktype,
      

  3.   

    能不能帮我设计一下:
    for(int i=0;i<10;i++)
        CreateThread(NULL,0,tFunc,NULL,0,NULL);DWORD WINAPI tFunc(LPVOID p){
        while(1){
              该线程群的功能就是从数据队列里不停的取数据,然后执行各种SQL操作
        }
    }
    怎样来使用ADO呀?
      

  4.   

    怎么使用ADO操作SQL是没问题的,就是用什么样的结构不清楚,大佬们帮忙呀。
    谢谢!
      

  5.   

    该线程群的功能就是从数据队列里不停的取数据,然后执行各种SQL操作用select取好了
    没关系的
    就是取完,获取数据以后,记得不要忘记把recordset关闭了,