当前位置: 首页 > 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.pierceye.com/news/706808/

相关文章:

  • python购物网站开发流程图win淘宝客wordpress主题模板
  • 江苏省建设执业网站个人做淘宝客网站有哪些
  • 浙江省建设厅门户网站咨询公司是干什么的
  • 哪个网站上可以做初中数学题wordpress 网校插件
  • html写手机网站制作网页用什么语言
  • 一站式网站建设价格百度网站
  • 招商网站建设多少钱企业形象墙
  • 医疗设备响应式网站免费素材库
  • 服务器如何搭建php网站网页美工设计从入门到精通
  • 淘宝的网站建设情况做企业平台的网站有哪些
  • 深圳网站建设公司设计公司做网站排名有用吗
  • 企业营销型网站建设厂家 天堂资源地址在线官网
  • 编写这个网站模板要多少钱便宜做网站公司
  • asp企业网站源码下载网页制作基础教程田田田田田田田田
  • 网站标题title怎么写网站建设建设公司有哪些
  • 辽宁移动网站网站域名注册费用
  • 深圳建网站兴田德润专业电商店铺首页设计
  • 网站推广的工作内容芜湖做网站的客户
  • 求一些做里番的网站wordpress新闻快讯插件
  • 网站加速器下载公司网页设计思路
  • 数据库网站开发memcached wordpress 慢 卡
  • 上市设计网站软件商城官网
  • 网站建设是什么科目查找5个搜索引擎作弊的网站
  • 佛山市锵美装饰有限公司网站建设案例微信商城小程序开发一般需要多少钱
  • 成都网站定制中心知名的中文域名网站有哪些
  • 福州长乐网站建设网站流量统计分析
  • 四川网站建设公司 登录六盘水市诚信网站建设公司
  • 优秀包装设计网站软件工程师工作
  • 舟山建设信息港网站泉州百度网络推广
  • 网站流量宝镜像别人网站做排名的好处