asp.net core程序在调试时,或者在生产环境运行dotnet命令后,报错:Microsoft.Hosting.Lifetime[0] Application is shutting down...
我这边的原因是:几位大哥写了几个后台任务,继承了BackgroundService,ExecuteAsync方法内使用的代码是同步执行。
也就是说程序要起来,必须等待所有自定义的BackgroundService执行完。
既然原因找到了,那么在ExecuteAsync方法体内,将所有代码用Task.Run()包起来就行了。