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

化妆品公司的网站建设策划书郑州做旅游网站的公司

化妆品公司的网站建设策划书,郑州做旅游网站的公司,常德网站制作,上海性价比高的装修公司如果不想等待异步控制台应用程序完成,可以取消该应用程序。 通过遵循本文的示例,可将取消添加到下载网站内容的应用程序。 可通过将 CancellationTokenSource 实例与每个任务进行关联来取消多个任务。 如果选择 Enter 键,则将取消所有尚未完成…

如果不想等待异步控制台应用程序完成,可以取消该应用程序。 通过遵循本文的示例,可将取消添加到下载网站内容的应用程序。 可通过将 CancellationTokenSource 实例与每个任务进行关联来取消多个任务。 如果选择 Enter 键,则将取消所有尚未完成的任务。

创建示例应用程序

创建新的 .NET Core 控制台应用程序。 可通过使用 dotnet new console 命令或从 Visual Studio 进行创建。 在你最喜欢的编辑器中打开 Program.cs 文件。

替换 using 语句

将现有 using 语句替换为以下声明:

using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Net.Http;
using System.Threading;
using System.Threading.Tasks;
添加字段

在 Program 类定义中,添加以下三个字段:

static readonly CancellationTokenSource s_cts = new CancellationTokenSource();static readonly HttpClient s_client = new HttpClient
{MaxResponseContentBufferSize = 1_000_000
};static readonly IEnumerable<string> s_urlList = new string[]
{"https://learn.microsoft.com","https://learn.microsoft.com/aspnet/core","https://learn.microsoft.com/azure","https://learn.microsoft.com/azure/devops","https://learn.microsoft.com/dotnet","https://learn.microsoft.com/dynamics365","https://learn.microsoft.com/education","https://learn.microsoft.com/enterprise-mobility-security","https://learn.microsoft.com/gaming","https://learn.microsoft.com/graph","https://learn.microsoft.com/microsoft-365","https://learn.microsoft.com/office","https://learn.microsoft.com/powershell","https://learn.microsoft.com/sql","https://learn.microsoft.com/surface","https://learn.microsoft.com/system-center","https://learn.microsoft.com/visualstudio","https://learn.microsoft.com/windows","https://learn.microsoft.com/maui"
};

CancellationTokenSource 用于向 CancellationToken 发出请求取消的信号。 HttpClient 公开发送 HTTP 请求和接收 HTTP 响应的能力。 s_urlList 包括应用程序计划处理的所有 URL。

更新应用程序入口点

控制台应用程序的主入口点是 Main 方法。 将现有方法替换为以下内容:

static async Task Main()
{Console.WriteLine("Application started.");Console.WriteLine("Press the ENTER key to cancel...\n");Task cancelTask = Task.Run(() =>{while (Console.ReadKey().Key != ConsoleKey.Enter){Console.WriteLine("Press the ENTER key to cancel...");}Console.WriteLine("\nENTER key pressed: cancelling downloads.\n");s_cts.Cancel();});Task sumPageSizesTask = SumPageSizesAsync();Task finishedTask = await Task.WhenAny(new[] { cancelTask, sumPageSizesTask });if (finishedTask == cancelTask){// wait for the cancellation to take place:try{await sumPageSizesTask;Console.WriteLine("Download task completed before cancel request was processed.");}catch (TaskCanceledException){Console.WriteLine("Download task has been cancelled.");}}Console.WriteLine("Application ending.");
}

目前将已更新的 Main 方法视为异步 main 方法,这允许将异步入口点引入可执行文件中。 将几条说明性消息写入控制台,然后声明名为 cancelTask 的 Task 实例,这将读取控制台密钥笔画。 如果按 Enter,则会调用 CancellationTokenSource.Cancel()。 这将发出取消信号。 下一步,从 SumPageSizesAsync 方法分配 sumPageSizesTask 变量。 然后,将这两个任务传递到 Task.WhenAny(Task[]),这会在完成两个任务中的任意一个时继续。

下一个代码块可确保在取消得到处理之前不会退出应用程序。 如果要完成的第一个任务是 cancelTask,则等待 sumPageSizeTask。 如果已取消,则等待时会引发 System.Threading.Tasks.TaskCanceledException。 块捕获该异常,并输出消息。

http://www.yayakq.cn/news/629877/

相关文章:

  • 青岛做网站的有哪些网站建设方案页面设计分析
  • 网站建设私活中能找看公狍和女人做爰网站
  • 企业做网站的目的网络运营一般工资多少
  • 做网站免费吗仿v电影wordpress
  • 网站各个功能模块企业网站建设计划表
  • 杭州市规划建设网站网络营销推广方法总结
  • 深圳公司网站搭建公司学编程的步骤
  • 自助开通网站网站开发流程图软件
  • 兼职网站高中生在家可做六安马启兵轮轩案
  • 成都市建设厅官方网站网站建设刂搜金手指下拉贰肆
  • 网站首页建设方案建设信息港网站
  • .aspx网站开发pdfiis7 wordpress
  • 如何做生鲜配送网站生意军事新闻最新消息报道
  • 四川网站建设益友河南省汝州市建设门户网站
  • 焦作建设网站哪家好网站托管服务商
  • 网站中备案与不备案的区别05网亮点给力大试卷
  • 临海钢结构设计网站互联网服务平台官网
  • 有没有什么做地堆的网站网站建设太金手指六六二五
  • 重庆忠县网站建设十大耐玩的网页游戏
  • 深圳网站建设toolcat网站建设php培训
  • 智能模板网站建设收费东营网站建设收益高
  • 怎么弄网站关键词wordpress 文章菜单
  • 鹿邑网站设计公司网站建设的完整流程
  • 常州溧阳市建设局网站如何利用个人nas做网站
  • 购物网站功能报价php网站开发软件是什么
  • 东莞网站建设公司好厦门seo网站管理
  • 运营好的网站制作中心电商网站设计模板dw
  • 淘宝 做网站空间 条件wordpress进销存插件
  • 网站建设优化安徽什么网站可以做微招聘
  • 钓鱼网站下载无锡企业网站制作