在线等。
CSharp 界面刷新 Thread.Sleep()导致界面假死怎么解决?

解决方案 »

  1.   

    加上App;ication.DoEvents()
    避免使用Sleep,而是使用Timer。
      

  2.   

    在 Thread.Sleep()这句话的前面或者后面加上Application.DoEvent();
      

  3.   

    还有别用一个太长的Thread.Sleep()。分成循环多个Thread.Sleep(),中间再调用Application.DoEvent();不过最好用线程或者Timer.
      

  4.   

    我是开的线程,实时更新相机采集回来的数据,CPU占到20%多,加了Thread.sleep(时间较长),CPU占用降低,但是界面出现假死!
    请问怎么解决呢?
      

  5.   

    两位大牛,两位的方法可以非常有效的降低CPU的占用率,但是DoEvent()函数好像是WinForm中的函数,我在C#中调用不了这个函数,请问有其他办法可以解决吗?