请多线程高手进来!!!(100分)

  • 主题发起人 主题发起人 quiben
  • 开始时间 开始时间
Q

quiben

Unregistered / Unconfirmed
GUEST, unregistred user!
请问,大虾下面两种方法哪个速度更快?
用一个线程来遍历10张Paradox数据表,大约10万条数据;
用10个线程遍历同样的数据表,平均每个线程遍历1张数据表;
这两种方法哪个更快??
 
我感觉是前一个快,呵呵,
不过也说不好,如果是先一个线程把所有的表读倒内存来,
然后开5个线程每个线程读内存理的两个表,利用多CPU的
优势或许快点也不定。
 
这个问题很难说,多线程程序如果写的不好,比单线程还要慢。
 
现在我的现象就是比单线程还要慢,特别奇怪?请问有没有相关的资料??
 
问题很简单,只有一个 CPU, 每一时间只有一个线程在执行。
多线程写的不好,要多一些线程之间同步的问题。
速度就慢了。
 
我的线程之间是没有任何联系的,是相互独立的。
 
比如你在写线程的时候,只用了一个数据连接..所以即使有多个线程 要征用一个资源,自然因为同步的问题而变慢了..
 
应该是一个线程快。因为你现在是在进行遍历操作,也就是CPU都是进行计算。而多线程的只会在你有很多空闲时候时才会有好处,比如说你使用SQL语句对远程数据进行检索,然后在前台进行计算。由于检索时要等待远程计算机的响应,传数据等,所以这里CPU就空闲了,那么第二个线程就可以利用这个空闲进行计算,这才会有效率。我写多线程的程序不多,只是我的理解。
 
后退
顶部