多线程问题
我有一组数组A(1000000)as string
我把数组分割成:B(500000)和 C(500000)
创建两个线程分别把数组B和C进行处理
Dim 线程1 As New Threading.Thread(AddressOf 过程1)
线程1.Start()
Dim 线程2 As New Threading.Thread(AddressOf 过程2)
线程2.Start()
但这两个线程在运行中占用CPU资源和内存和我用单线程处理数组A占用资源差不多,而双线程所用时间比单线程
还要多,是那里出问题呢?
注明:CPU是双核,数据分割成B和C处理是独立处理,没有共用数据,请问怎样才能真正做到双线程提高效率
[解决办法]
用了50%就是单核占满了呗,得用2楼那种的CPU并行计算...双核并行“看起来”会减少近一半运行时间,核越多越少...但是仍然不可能降低总体运行时间...
只有单线程CPU占不满的任务才适用多线程...
[解决办法]
http://blog.csdn.net/begtostudy/article/details/4289739