L lfzxs Unregistered / Unconfirmed GUEST, unregistred user! 2007-10-19 #1 我用ADO单线程处理500条SQL总耗时47172毫秒平均每条处理88毫秒,5线程是35641毫秒平均321毫秒。<br><br>效率提高不到30%,平均时间翻了4倍,这是怎么回事???
那 那年黄梅花开 Unregistered / Unconfirmed GUEST, unregistred user! 2007-10-19 #3 多线程不能提高速度;数据库是对应硬盘上的一个文件,最终还是多个线程一个一个串行访问文件的<br>http://www.delphibbs.com/delphibbs/dispq.asp?lid=3838846
多线程不能提高速度;数据库是对应硬盘上的一个文件,最终还是多个线程一个一个串行访问文件的<br>http://www.delphibbs.com/delphibbs/dispq.asp?lid=3838846
P Peter_Xiong Unregistered / Unconfirmed GUEST, unregistred user! 2007-10-19 #5 总耗时降低了就可以了啊<br>另外mssql的并行处理能力不是很强的
B bbscom Unregistered / Unconfirmed GUEST, unregistred user! 2007-10-19 #6 处理500条SQL总耗时47172毫秒是你设计时在某些地方出了问题,我处理1000条SQL也不要这么多时间。<br>你很可能是在程序不停的打开数据库,这样当然会用更时间呢。<br>我建议你把500条SQL全部写到后数据库储存过程,然后再执行就不要这么多时间了。
处理500条SQL总耗时47172毫秒是你设计时在某些地方出了问题,我处理1000条SQL也不要这么多时间。<br>你很可能是在程序不停的打开数据库,这样当然会用更时间呢。<br>我建议你把500条SQL全部写到后数据库储存过程,然后再执行就不要这么多时间了。
S snail2233 Unregistered / Unconfirmed GUEST, unregistred user! 2007-10-22 #8 如果是在同一台机子上运行多线程的话,比原先更慢些是不奇怪的,因为服务器处理总量不变,但客户端因为多线程所以要多些额外的资源分配等等的消耗
W wyb_506 Unregistered / Unconfirmed GUEST, unregistred user! 2007-10-23 #10 关键是你的语句,你这样说只能说明表面现象,是不是你的语句导致产生很多锁了,频繁打开关闭表了?再有,你线程太多到服务器也得串行,所以优化语句是关键
L lfzxs Unregistered / Unconfirmed GUEST, unregistred user! 2007-10-29 #11 我是在模拟多个客户端的请求,语句基本一样只是条件不一样。