微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么在Vista / 7中,RequestAdditionalTime方法不能重新启动?

我一直在做一些我一直在用C#.Net 3.5编写的Windows服务的广泛testing。 即使我正在调用RequestAdditionalTime()方法,它应该更新SCM并保持我的服务正在运行,但在重新启动或closures计算机时,我无法让Windows为我的服务提供足够的时间来正常closures服务。 但是,如果我手动停止服务,我的代码正常工作。 我主要是在Windows Vista和Windows 7中testing这个代码,决定在Windows XP中testing代码时,一切正常。 有谁知道为什么这个电话不能在Vista / 7中工作? 我想我需要一些权限,以防止系统closures,我在认情况下在XP中,而不是在Vista / 7中。

帮助修复C#中的错误“引用或失败参数必须是可赋值的”

修改创builddate的属性

在Windows中比在Linux中慢的端口监听?

如何在Linux上使用fsharpc访问Nuget中的.dll

以编程方式监视磁盘活动(Windows)

如果系统没有关闭,你的服务可以要求额外的时间,你的过程不会被杀死。

如果系统关闭,您的服务必须关闭。 你甚至没有得到正常的服务30秒。 关机比以前更强大。

在非关闭情况下,RequestAdditionalTime()必须比每2分钟更频繁一次调用

protected override void OnStop() { Thread.Sleep(60000); RequestAdditionalTime(180000); Thread.Sleep(60000); RequestAdditionalTime(180000); Thread.Sleep(5000); }

请注意,尽管名称,时间参数是请求的总关闭时间。

Simon Buchan的答案中的2分钟链接在这里提到我的微软: http : //connect.microsoft.com/VisualStudio/Feedback/details/96460/servicebase-requestadditionaltime-has-no-impact-on-start-timeout

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐