當線程多的時候就會造成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);}