HostFactory.Run和HostFactory.New有什么区别

Tom*_*son 20 .net topshelf

我需要在我所在的项目中使用topshelf,我希望有一个简单的问题.当我使用时HostFactory.Run,一切都运行正常,但我认为HostFactory.New通过阅读函数上的名称来使用似乎更合理,这里使用的是:http://docs.topshelf-project.com/en/latest/ configuration/config_api.html.

然而,在更简单的例子,http://docs.topshelf-project.com/en/latest/configuration/quickstart.html中,HostFactory.Run使用insted的的HostFactory.New.那么区别是什么呢?

Dav*_*cia 17

Run 几乎只包含:

return New(configureCallback).Run();
Run Code Online (Sandbox Code Playgroud)

因此Run,只需创建并立即运行实例的便捷方法,而不是像创建实例一样New.


小智 11

HostFactory.Run 会吃掉所有异常,所以它会无声地退出,你永远不知道是什么导致它.

HostFactory.New

将抛出异常.

  • 一种死灵,但这需要更新.刚遇到这个问题,"run"会执行而不会抛出任何东西,但进程从未实际运行过.对于SO来说,有用的答案会被低估. (2认同)