如何使用在路线上触发的取消令牌来停止“ IWebHost”

时间:2019-01-13 21:54:59

标签: .net-core cancellationtokensource

您好,我想知道是否可以通过输入服务器的路由来停止和重新启动Asp Net Core应用程序。

假设User A通过服务器上的路由A启动了一个长时间运行的任务。 我希望User B能够访问服务器上的路由B,从而停止服务器并重新启动它。我不想杀死整个过程,只想杀死Webhost。在我的情况下,我并不关心安全终止用户A,我只是想杀死它并尽快重新启动它。 我已经看到IWebHost RunAsync有一个扩展名。我想知道是否可以在CancellationTokenSource中定义一个Program.Main并将其设置为{{1 }},并在有人进入特定路线时呼叫其WebHost

cancel

启动

public static void Main(string[] args)
        {
CancellationTokenSource tsc=new CancellationTokenSource();
  //pass the token to the webhost,\
            CreateHostBuilder(args).Build().RunAsync(tsc); //wrap it in a Task if need arises
        }

        public static IWebAssemblyHostBuilder CreateHostBuilder(string[] args) =>
            BlazorWebAssemblyHost.CreateDefaultBuilder()
                .UseBlazorStartup<Startup>();

0 个答案:

没有答案