以编程方式重新启动c#TopShelf服务 我发现自己处于一个糟糕的情况,我有一个TopS架服务,它使用一个带有内存问题的C++库。由于我身处一个地方,我想时不时打电话给TopShelf,在其活动暂停期间重新启动服务,除了“让世界再次变得正确”之外,没有其他原因
有任何TopShelf API允许这样做吗?我在文档中找不到任何文件。我确信Topshelf不支持这一点,因此您必须自己编写代码 看看这门课以编程方式重新启动c#TopShelf服务 我发现自己处于一个糟糕的情况,我有一个TopS架服务,它使用一个带有内存问题的C++库。由于我身处一个地方,我想时不时打电话给TopShelf,在其活动暂停期间重新启动服务,除了“让世界再次变得正确”之外,没有其他原因,c#,topshelf,C#,Topshelf,有任何TopShelf API允许这样做吗?我在文档中找不到任何文件。我确信Topshelf不支持这一点,因此您必须自己编写代码 看看这门课 最坏的情况是,您可能有第二个简单的topshelf安装程序来管理您当前的服务并重新启动它?(我知道有点脏)调用环境。退出(1)何时需要重新启动服务 然后在HostFactory中添加EnableServiceRecovery HostFactory.Run(configure => { conf
最坏的情况是,您可能有第二个简单的topshelf安装程序来管理您当前的服务并重新启动它?(我知道有点脏)调用
环境。退出(1)代码>何时需要重新启动服务
然后在HostFactory中添加EnableServiceRecovery
HostFactory.Run(configure =>
{
configure.Service((ServiceConfigurator<Service> service) =>
{
service.WhenStarted(s => s.Start());
service.WhenStopped(s => s.Stop());
});
//Setup Account that window service use to run.
configure.RunAsNetworkService();
configure.SetServiceName("ServiceName");
configure.SetDisplayName("ServiceName");
configure.SetDescription("Description");
configure.StartAutomaticallyDelayed();
configure.EnableServiceRecovery(recoveryOption =>
{
recoveryOption.RestartService(0);
});
});
HostFactory.Run(配置=>
{
configure.Service((ServiceConfigurator服务)=>
{
service.WhenStarted(s=>s.Start());
停止时的服务(s=>s.Stop());
});
//Windows服务用于运行的安装程序帐户。
configure.RunAsNetworkService();
configure.SetServiceName(“ServiceName”);
configure.SetDisplayName(“ServiceName”);
configure.SetDescription(“Description”);
configure.StartAutomaticallyDelayed();
configure.EnableServiceRecovery(recoveryOption=>
{
recoveryOption.RestartService(0);
});
});
TopShelf不支持-