通常要隔一段时间去执行某一任务死循环 while(true)然后sleep
也可以用timer来实现
两者到底谁好?
同时对内存或者底层的影响,以及资源的占用的原理情况是怎样的?
谢谢了

解决方案 »

  1.   

    不好说 不同的环境下不同的表现吧不过while会使界面卡死,timer也可能不过时间上会少一点
      

  2.   

    反正都只那么好。。如果两者之间。。我选择用timer
      

  3.   

    while TRUE 无限循环 使用内存量巨大,如果内部逻辑复杂可能导致内存不足造成死机time 和 WHILE一样 只不过TIME可以自己定义循环时间,如果时间为1毫秒内部逻辑复杂照样死机 
      

  4.   

    while TRUE 无限循环 使用内存量巨大,如果内部逻辑复杂可能导致内存不足造成死机time 和 WHILE一样 只不过TIME可以自己定义循环时间,如果时间为1毫秒内部逻辑复杂照样死机
      

  5.   

    net内置了3个timer
    forms里面的timer是基于UI线程的
    而另外两个timer,都是基于线程池的
    Envirment.GetTickCount的精度是和Timer是完全一样的,都是本地计算机时钟
    Thread.sleep直接调用内核的指令,所在线程挂起,CPU执行队列的重排序。
    Timer每次Elapsed会在线程池中取新的线程来执行,存在多次访问线程池的损耗。