当线程多的时候就会造成CPU内存占用率过高
private void button1_Click(object sender, EventArgs e)
{
Thread TH1, TH2, TH3, TH4, TH5;
TH1 = new Thread(Thread1)
{
IsBackground = true
};
TH2 = new Thread(Thread2)
{
IsBackground = true
};
TH3 = new Thread(Thread3)
{
IsBackground = true
};
TH4 = new Thread(Thread4)
{
IsBackground = true
};
TH5 = new Thread(Thread5)
{
IsBackground = true
};
TH1.Start();
TH2.Start();
TH3.Start();
TH4.Start();
TH5.Start();
}
public void Thread1()
{
while (true) ;
}
public void Thread2()
{
while (true) ;
}
public void Thread3()
{
while (true) ;
}
public void Thread4()
{
while (true) ;
}
public void Thread5()
{
while (true) ;
}
上面这段代码,CPU的占用率高
解决方法:
只要我们上每个线程岔开时间执行即可,我们在每一段循环中增加thread.sleep(1),让线程休眠等待。
public void Thread1()
{
while (true)
Thread.Sleep(1);
}
public void Thread2()
{
while (true)
Thread.Sleep(1);
}
public void Thread3()
{
while (true)
Thread.Sleep(1);
}
public void Thread4()
{
while (true)
Thread.Sleep(1);
}
public void Thread5()
{
while (true)
Thread.Sleep(1);
}