C#Poll()方法

时间:2015-10-13 12:56:17

标签: c# asp.net-mvc

我在MVC 4.5项目中创建了一个服务类。在这个课程中,我需要开始一个Poll方法。

这样做的最佳做法是什么?

这是一个模拟,但需要启动,不建议使用Thread.Sleep。并且该方法应该是全局的,并且每分钟只能调用一次。

    private void Poll()
    {
        Foo("Do somethings");
        Thread.Sleep(60000);
        Poll();
    }

有什么好的建议吗?

1 个答案:

答案 0 :(得分:2)

使用您的方法最终会产生StackOverflowException

您应该利用内置的Timer类。 你可以Update part of a model on change event

您的使用代码类似于

Timer t = new Timer(o => Foo("Do somethings"), null, 0, 60000);

旁注:

正如@RonBeyer指出的那样,在ASP.net中进行民意调查可能不是您完成工作的最佳工具。

WCF长期运行的服务,例如对您的ASP.Net应用程序的Web挂钩似乎是合适的。同样,这取决于您需要实现的目标。不要犹豫,详细了解您的最终目标是什么。

相关问题