C#调用多线程时间延长
C# code
用这段代码测试的时候 不加多线程那一块显示的时间是400多毫秒 然后加上多线程反而成了900多毫秒
请教大虾,是什么原因 是不是我测试的时间太短导致的,还是条用多线程就是会延长程序的时间
Stopwatch stw = new Stopwatch(); public int i = 0; private void Form1_Load(object sender, EventArgs e) { CheckForIllegalCrossThreadCalls = false; stw.Start(); Thread thread = new Thread(start); thread.Start(); for (int j = 0; j < 999999999; j++) { i++; if (i >= 99999999) { stw.Stop(); label1.Text = stw.ElapsedMilliseconds.ToString(); break; } } //Suodeshuijisuan(Class1.shuiqian, Class1.shuilv, Class1.suodeshui); //label1.Text = "cd"; } public void start() { for (int j = 0; j < 999999999; j++) { i++; if (i >= 99999999) { stw.Stop(); label1.Text = stw.ElapsedMilliseconds.ToString(); break; } } }
用这段代码测试的时候 不加多线程那一块显示的时间是400多毫秒 然后加上多线程反而成了900多毫秒
请教大虾,是什么原因 是不是我测试的时间太短导致的,还是条用多线程就是会延长程序的时间
作者: jjkkason 发布时间: 2011-06-15
调用线程肯定会多花时间
线程的意义在于并行计算,防止界面卡死,等待IO
并不会减少运算量,而且你那个是单线的,放在那都一样
至于400ms编程900是你计数不对吧,不可能差这么多
线程的意义在于并行计算,防止界面卡死,等待IO
并不会减少运算量,而且你那个是单线的,放在那都一样
至于400ms编程900是你计数不对吧,不可能差这么多
作者: Icedmilk 发布时间: 2011-06-15
没有人帮忙吗
作者: jjkkason 发布时间: 2011-06-15