【发布时间】:2012-12-23 19:47:49
【问题描述】:
我的主函数中有一个包含以下代码的应用程序:
var timer = new System.Threading.Timer(Callback_f, null, TimeSpan.Zero, TimeSpan.FromMinutes(srcInterval));
好的,这确实有效,但只有当我放置一些东西来让我的应用程序保持活力时,比如console.readkey() 或无限循环:
while (true)
{
}.
无限循环对我来说不是一个选项,因为它太耗时了。问题是我也不能使用 console.readkey 函数,因为它是一个 Windows.forms 应用程序,其中没有任何表单。 (即,当我将它作为控制台应用程序运行并在最后放置 console.readkey() 方法时,它可以工作。但是我想避免显示黑色窗口,它是一个没有界面的应用程序,在后台运行)。有什么建议吗?
【问题讨论】:
-
您能否详细说明您要达到的目标?你能用 Thread.Sleep(...) 和 Thread.Join(...) 吗?
-
您需要记录您打算如何终止程序。如果您不知道,那么您可能应该考虑一项服务。
标签: c# timer keep-alive