大家看看这是怎么回事
我用相同的测试代码,在vs2010中调试时明显比在vs2008中卡很多,在2010中拖动窗体明显要“卡”点,这是怎么回事。
代码很简单,大家勿笑哈 ^_^
private delegate void MyDelegate(int i);
private delegate void MyDelegate1(ProgressBar p, int i);
private void button1_Click(object sender, EventArgs e)
{
Thread td = new Thread(ThreadDoWork);
td.IsBackground = true;
td.Start();
}
private void GetRandomValue(int m)
{
if (InvokeRequired)
{
MyDelegate del = new MyDelegate(GetRandomValue);
this.Invoke(del, m);
}
else
{
textBox1.Text += m.ToString() + " + ";
}
}
private void ThreadDoWork(object obj)
{
for (int m = 0; m <= 100; m++)
{
ShowProgress(progressBar1, m);
Thread.Sleep(100);
GetRandomValue(m);
}
}
private void ShowProgress(ProgressBar p, int i)
{
if (InvokeRequired)
{
MyDelegate1 del = new MyDelegate1(ShowProgress);
this.Invoke(del, p, i);
}
else
p.Value = i;
}
------解决方案--------------------顶起
估计你的机器爬不动了
------解决方案--------------------清理解决方案,重新编译。
------解决方案--------------------stopwatch方法执行时间
重新生成编译