第一次碰到这种代码,高手解答ConnectionPtr的问题。
多线成操作数据库,
每个线程内部都新建ConnectionPtr,Create,Open,然后查询,close...。
我想全局就一个ConnectionPtr,Open
多线程传入Ptr的指针,查询
所有线程结束再close
2种方式效率会不会有很大差别??
问题点数:50、回复次数:4Top
1 楼gao_ming77(小明)回复于 2006-02-17 14:19:52 得分 50
多线程的快一些。如果你的线程不是太多,但线程需要访问大量数据的话。
我以前就碰到过此类情形。Top
2 楼oopilix(OOPsunday)回复于 2006-02-17 14:25:21 得分 0
两种方式都是多线程阿。
不过前者是Thread1,Thread2,Thread3,Thread4
...
后者Thread,Create 出1~8个。Top
3 楼gao_ming77(小明)回复于 2006-02-17 14:42:55 得分 0
呵呵,楼主误会了,我是说多线程多个连接方式。Top
4 楼oopilix(OOPsunday)回复于 2006-02-17 14:55:52 得分 0
代码简化如下:
第一种
OnDo1
{
ConnectionPrt
open
query
close()
}
OnDo2
{
ConnectionPrt
open
query
close()
}
执行
OnDo1();
OnDo2();
第二种情况
ConnectionPtr *ptr;
Open;
UINT OnDo (LPARAM lparam) //线程
{
ptr =(ConnenctionPtr*)lparam;
ptr->Query
}
执行连续CreateThread( (THREADPROC)OnDo))...
ptr->Close
Top




