CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
英特尔®游戏设计大赛100美元现金周周送 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  VC/MFC >  数据库

ADO自己是不是有连接池的?

楼主tigeadfish(虎头鱼)2003-12-01 20:54:26 在 VC/MFC / 数据库 提问

为什么我建立两个连接后同时查询500次的时间比用一个连接查询1000的时间要长?  
  #include   "DBManager.h"  
   
  DBManager   a;  
  DBManager   b;  
   
   
  static   DWORD   WINAPI   handleSocketThread(LPVOID)  
  {  
  printf("begin   thread   time\n");  
  DWORD   dwStartTicks1   =   GetTickCount();  
  string   pre="select   *   from   mocity";  
  for(int   i=0;i<100;i++)  
  {  
  // printf("a:%d\n",i);  
  a.executeQuery(pre);  
  }  
  printf("thread   time:%d\n",   GetTickCount()-dwStartTicks1);  
  return   0;  
  }  
   
  static   DWORD   WINAPI   handleSocketThread1(LPVOID)  
  {  
  printf("begin   thread1   time\n");  
  DWORD   dwStartTicks1   =   GetTickCount();  
  string   pre="select   *   from   mocity";  
  for(int   i=0;i<100;i++)  
  {  
  // printf("b:%d\n",i);  
  b.executeQuery(pre);  
  }  
  printf("thread1   time:%d\n",   GetTickCount()-dwStartTicks1);  
  return   0;  
  }  
   
  static   DWORD   WINAPI   handleSocketThread2(LPVOID)  
  {  
  printf("begin   thread2   time\n");  
  DWORD   dwStartTicks1   =   GetTickCount();  
  string   pre="select   *   from   mocity";  
  for(int   i=0;i<500;i++)  
  {  
  a.executeQuery(pre);  
  }  
  printf("thread2   time:%d\n",   GetTickCount()-dwStartTicks1);  
  return   0;  
  }  
  void   main()  
  {  
  a.Open("Provider=sqloledb;Data   Source=127.0.0.1;Initial   Catalog=mocity",   "sa",   "1");  
  // b.Open("Provider=sqloledb;Data   Source=127.0.0.1;Initial   Catalog=mocity",   "sa",   "1");  
   
  DWORD   id;  
  CreateThread(NULL,   1000,   handleSocketThread,   NULL,   0,   &id);  
  // CreateThread(NULL,   1000,   handleSocketThread1,   NULL,   0,   &id);  
  // CreateThread(NULL,   0,   handleSocketThread2,   NULL,   0,   &id);  
   
   
  /*@**#---2003-12-01   20:13:29   (xinbao)---#**@  
   
  printf("begin   main   time\n");  
  DWORD   dwStartTicks1   =   GetTickCount();  
  string   pre="select   *   from   mocity";  
  for(int   i=0;i<500;i++)  
  {  
  a.executeQuery(pre);  
  }  
  printf("main   time:%d\n",   GetTickCount()-dwStartTicks1);  
  */  
  while(1)  
  Sleep(10000);  
  a.Close();  
  // b.Close();  
  } 问题点数:0、回复次数:1Top

1 楼MHB(秋天的风)回复于 2003-12-02 09:50:51 得分 0

连odbc都有连接池  
  ado也不例外(ado连接池的调用可以到microsoft.com去看看,半年前我在microsoft.com网上看到过关ado连接池的技术文章。)Top

相关问题

  • ado连接mysql
  • ADO连接Access2000
  • ADO连接Access
  • ADO的连接
  • ado连接问题
  • ado连接问题
  • ADO连接问题
  • ado连接错误!
  • ADO连接问题
  • 100分请教ADO-OLEDB连接池的管理问题

关键词

  • 连接
  • 查询
  • dbmanager
  • 时间
  • dword

得分解答快速导航

  • 帖主:tigeadfish

相关链接

  • Visual C++类图书
  • Visual C++类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo