首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >console.readline()的使用

console.readline()的使用
EN

Stack Overflow用户
提问于 2015-05-11 10:03:23
回答 1查看 795关注 0票数 0

现在,我有了一个C#应用程序,它使用计时器运行24/7,它会在30秒内全部运行,并执行任何操作。

我想把这个应用程序变成一个windows服务,以便在后台运行。但是服务崩溃马上..。

我的代码:

代码语言:javascript
运行
复制
public static System.Timers.Timer _timer = new System.Timers.Timer();

static void Main(string[] args)
{
      _timer.Interval = 30000;
      _timer.Elapsed += timerCallback;
      _timer.AutoReset = true;
      _timer.Start();
}
public static void timerCallback(Object sender, System.Timers.ElapsedEventArgs e)
{
      // Do anything..
}

而错误是:

Windows无法在本地计算机上启动应用程序服务。 错误1053:服务没有及时响应启动或控制请求。

在windows事件查看器中,发生此消息:

在等待应用程序服务连接时,达到了超时(30000毫秒)。

但是错误出现的速度比30秒还快?!

有什么解决方案来运行这个服务??谢谢

迈克尔

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-05-11 10:13:27

您可以使用计时在windows服务中定期执行逻辑,

代码语言:javascript
运行
复制
protected override void OnStart(string[] args)
{
  base.OnStart(args);

  Timer timer = new Timer();
  timer.Interval = 30*1000;
  timer.Elapsed += new ElapsedEventHandler(timer_Elapsed);
  timer.Enabled = true;
  timer.Start();
}
代码语言:javascript
运行
复制
private void timer_Elapsed(object sender, ElapsedEventArgs e)
{
  //put logic here that needs to be executed for every 30sec
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30164748

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档