none
线程做计时器,和Timer计时器,对比。 RRS feed

  • 问题

  • 线程做计时器,和Timer计时器,对比。

    线程做计时器(线程里的方法):
    //采集任务控制线程(遍历每个任务对象,任务对象中存储着每个设备信息和接口信息关系,在指定时间间隔的整数倍的时候,将设备对象添加到接口对象即可完成采集)
            private void RunTask()
            {
                while (true)
                {
                    Thread.Sleep(10);
                    //遍历每个采集任务对象
                    foreach (ITask it in TaskList)
                    {
                        //判断当前时间是不是“采集频率”妙的整数倍
                        if (it.TaskCheck())
                        {
                            //执行采集(将)
                            it.Execute();
                        }
                    }
                }
            }

    问题:
            用个“Thread.Sleep(10);”的线程做计时器,判断时间间隔(比如间隔1分钟),执行数据采集,是不是资源开销比Timer计时器控件要大很多???

    Science and technology is my lover.

    2014年8月12日 13:37

全部回复

  • 你好:

    我建议你做一个测试,只有测试过才能知道开销到底哪个大, 因为Timer控件毕竟和Thread是不同的两个东西。


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    2014年8月13日 8:23
    版主