一般要降低cpu占用可以用sleep语句
但是在有些时候sleep不能降低CPU占用谁有其它的方法?

解决方案 »

  1.   

    思路一:
    设置线程的优先级;如TThread.Priority := tpLowest
    tpIdle    最低的优先级。只有系统处于空闲状态时才执行
    tpLowest  比普通优先级低两级
    tpLower   比普通优先级低一级
    tpNormal  普通的优先级
    tpHigher  比普通优先级高一级
    tpHighest 比普通优先级高两级
    tpTimeCritical 最高的优先级思路二:
    sleep或者在主线程里加Application.processMessages;
      

  2.   

    http://community.csdn.net/Expert/topic/4204/4204487.xml?temp=.5655939
    继续讨论,希望高手加入
      

  3.   

    没有sleep,只加Application.PorcessMessage是效果不好的。
      

  4.   

    置线程的优先级;如TThread.Priority := tpLowest
      

  5.   

    我这是屏幕传输程序,线程好像不能减少CPU占用(和不放在线程中是一样的;只是自身的反映快点)如果设置优先级低下了话,效果会很差的啊
      

  6.   

    本人觉得程序尽量不用用Sleep,还不如用WaitMessage,Timer等