我也提了这个问题不过到现在还没 解决,你要是解决了,请电邮[email protected]
在下万分感谢!!!
你也留个E_mail吧。看我们谁先解决

解决方案 »

  1.   

    用线程处理还要注意优先级的设置,我觉得如果实时性不是很强,没有必要用线程,如实时数据采集等才会用到线程.在DEPHI下面,用定时器比用线程耗费的系统资源要少很多!
    还要楼主提到CPU资源的问题,如果这是指CPU时间的话:当程序时刻都在处理事件时,如果没有别的进程抢占CPU时间的话.你的进程将占用全部的CPU时间.这在写处理实时数据的程序时是很正常的.
      

  2.   

    您不用timer,用延时,最好在单独的线程中procedure myThread.Execute;
    begin
        while not Terminated do begin
           Sleep(100) //如果您要延时在这里写
           DoSomeThingHere;
        end;
    end;
      

  3.   

    线程并不能解决你的CPU被占完问题,你的算法要优化
      

  4.   

    在timer事件开的时候
    检查是否存在同名的互斥元,有,则认为重入,退出,否则创建一个互斥元,CreateMutex,在timer结束的时候释放掉。
    这样可以保证不发生重入,(但是我觉得ttimer似乎不存在冲入的问题吧?!)