当前位置: 首页 > news >正文

常德网站seo广告设计与制作流程

常德网站seo,广告设计与制作流程,建设 网站,外贸相关岗位人才招聘启事前言上次#xff0c;我们介绍了《如何获取 ASP.NET Core 启动地址》。但是#xff0c;如果要在 BackgroundService 中获取启动地址可不那么容易#xff0c;因为 BackgroundService 在 app 启动前就开始执行了:var builder WebApplication.CreateBuilder(args); builder.Ser…前言上次我们介绍了《如何获取 ASP.NET Core 启动地址》。但是如果要在 BackgroundService 中获取启动地址可不那么容易因为 BackgroundService 在 app 启动前就开始执行了:var builder  WebApplication.CreateBuilder(args); builder.Services.AddHostedServiceDemoBackgroundService();var app  builder.Build();app.MapGet(/, ()  Hello My IO!);await app.StartAsync();Console.WriteLine(app.Urls.First());await app.WaitForShutdownAsync();internal class DemoBackgroundService : BackgroundService {protected override async Task ExecuteAsync(CancellationToken stoppingToken){Console.WriteLine(BackgroundService ExecuteAsync);await Task.CompletedTask;} }那要怎么实现呢IHostApplicationLifetime我们可以利用ASP.NET Core应用程序生存期事件等待启动完成再获取启动地址internal class DemoBackgroundService : BackgroundService {private readonly IServiceProvider _services;private string _url;public DemoBackgroundService(IServiceProvider services, IHostApplicationLifetime lifetime){_services  services;lifetime.ApplicationStarted.Register(OnAppStarted);}public void OnAppStarted(){var server  _services.GetServiceIServer();_url  server.Features.GetIServerAddressesFeature().Addresses.First();}protected override async Task ExecuteAsync(CancellationToken stoppingToken){while (string.IsNullOrWhiteSpace(_url)){await Task.Delay(1000); }Console.WriteLine(BackgroundService ExecuteAsync);Console.WriteLine(_url);await Task.CompletedTask;} }现在可以正常获取 ASP.NET Core 启动地址了SemaphoreSlim轮询虽然可以解决问题但感觉不太优雅。我们可以创建一个信号灯 SemaphoreSlim在ExecuteAsync方法中等待信号灯而在启动后释放信号灯static SemaphoreSlim semaphoreSlim  new SemaphoreSlim(0, 1);public void OnAppStarted() {...semaphoreSlim.Release(); } protected override async Task ExecuteAsync(CancellationToken stoppingToken) {await semaphoreSlim.WaitAsync();... }可以看到这样还带来了另外一个好处比上面的解决方式更快地进入到了 BackgroundService结论今天我们利用了ASP.NET Core应用程序生存期事件实现了在 BackgroundService 获取 ASP.NET Core 启动地址。添加微信号【MyIO666】邀你加入技术交流群
http://www.zqtcl.cn/news/706808/

相关文章:

  • 安康网站开发公司报价网站开发人员考核
  • 谷歌网站 百度清苑住房和城乡建设局网站
  • 南宁世尊商贸网站建设如何查看一个网站是否备案
  • h5手机网站怎么做搜索引擎关键词怎么选
  • 弱电网站源码工程造价建设信息网站
  • 村级网站模板做公司永久免费网站什么好
  • 厦门做网站培训安康市电梯公司
  • 江苏水利建设网站排行榜百度
  • 营销导向的企业网站优化wordpress制作企业
  • 株洲网站建设公司wordpress资讯类主题破解版
  • 网站导航栏设计要求wordpress直达按钮
  • 网站建设寻找可以途径网站制作的目的
  • 私募基金网站建设wordpress快讯插件
  • 无锡网站搜索引擎优化校园二级网站建设
  • 用vps刷网站流量要怎么做云主机开网站教程
  • 个体户经营异常如何网上解除深圳seo云哥
  • 网站建设科研申报书沧州网站建设定制价格
  • 家纺营销型网站wordpress演示数据
  • 中卫建设厅网站中国纪检监察报
  • 网站建设费如何核算如何给网站做权重
  • 东莞营销型高端网站建设网页专题设计
  • 神兵网站建设互联网个人用户网站
  • 类似视频教程网站的wordpress主题网页设计用什么尺寸的画布好
  • 仿模板电影网站线上销售的方法和技巧
  • 漳州建设银行网站首页速成建站
  • 网站建立的链接不安全怎么解决学校网站怎样建设
  • 信阳市工程建设信息网站wordpress段子
  • 网站建设和网络搭建是一回事吗长沙网站搭建优化
  • 基础网站怎么做石景山公司
  • 吉他谱网站如何建设wordpress主题字体用隶书