net await 、 Task、 Async 不用async异步方法

news2024/11/11 18:13:51

详细资料

lamda 变成异步方法 ,只要在前面 加 async 修饰 即可

》》await 修饰的 ,await 所在的方法,必须修饰 async

ThreadPool.QueueUserWorkItem( async  (obj)=>{
   while(true)
   {
      await File.WriteAllTextAsync("路径","要写入的内容");      
   }
})

如果无法用 await 修饰的异步方法, 但有死锁的风险

》》需要分2步
1》

Task t = File.ReadAllTextAsync(“路径”)

2》

string s = t.Result;

或者

string s = Task t = File.ReadAllTextAsync(“路径”).await();

在这里插入图片描述
在这里插入图片描述
》》》结论
await 调用的等待期间,.Net会把 当前的线程返回给线程池,等异步方法调用执行完毕后框架会从线程池取出来一个线程执行后续的代码。所以await 前后可能不是同一个线程。如果await 时间越长,大概率不是一个线程,如果时间较短,大概率是同一个线程。线程切换会浪费资源的。

Async 异步方法 并不会自动在新线程中执行, 除非 手动 放到新线程中,常用 Task.Run()

在这里插入图片描述
》》》 手动放入线程中。
在这里插入图片描述
》》》》结论
异步方法 不等于 多线程
异步方法的代码并不会自动在新线程中执行,除非把代码放到新线程中执行。

没用async 的 异步方法 ,运行效率更高,不会造成线程浪费

》》》 async  修饰的方法  会被编译器  生成一个类,所以运行效率没有普通的方法高
》》》如果一个异步方法只是对别的异步方法调用的转发,并没有太多复杂的逻辑(比如等待A结果,再调用B;把A调用的返回值作为B使用。)那就可以去掉   async   关键字。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2144500.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AORO A30防爆手机震撼发布,红外热成像尽显巡检“科技范儿”

随着工业化的深入发展,各类“危、急、特”场景(如化工园区、矿山作业、消防救援等)的安全巡检任务日益繁重且复杂多变。面对极端环境下的安全隐患,传统巡检手段显得力不从心,行业痛点亟待解决。遨游通讯凭借其深厚的技…

二维结构迭代次数顺序的连续性

在行列可自由变换的条件下,平面上的3点结构只有6个 4点结构只有16个 3点结构按照训练集A-B矩阵的高有3s1和3s2两种顺序,同样4点结构也有4s1和4s2两种顺序。4s1可以用结构加法转化成3点结构顺序4s1-3. (A,B)---6*n*2---(0,1)(1,0) 分类A和B,…

若依的使用

目录 一、启动步骤 二、重要的功能点: 1、登录: 流程: 前端: 注册: 2、创建子项目 3、导出 1、后台: 2、前端 三、如何生成代码: 一、启动步骤 将sql导入数据库。。。启动redis&…

57页PPT | 智慧文旅整体建设解决方案

主要介绍了智慧文旅的建设背景、需求分析、解决方案、应用系统功能需求、客户价值、企业价值、建设理念、建设思路、总体架构、安全管理体系、融媒体综合服务平台、大数据分析平台、智慧文旅云平台、智慧管理、智慧营销、智慧服务等方面的内容。 背景及需求分析 方案架构及理念…

【Vue】- 路由及传参

文章目录 知识回顾前言源码分析1. 声明式导航2. 路由传参3. 可选符4. 重定向5. 4046. 跳转及传参7. 路由懒加载拓展知识总结router-link静态传参和动态路由的对比知识回顾 前言 什么是单页面应用程序? ● 所有功能在一个html页面上实现 单页面应用优缺点? ● 优点:按需更新…

Java 入门指南:JVM(Java虚拟机)垃圾回收机制 —— 新一代垃圾回收器 ZGC 收集器

文章目录 垃圾回收机制垃圾收集器垃圾收集器分类ZGC 收集器ZGC 的性能优势复制算法指针染色读屏障 ZGC 的工作过程Stop-The-World 暂停阶段并发阶段 垃圾回收机制 垃圾回收(Garbage Collection,GC),顾名思义就是释放垃圾占用的空…

第二期: 第11节, uboot 命令的使用

问题:如果你只想控制一个led 灯,并且不想去写驱动。 那么可以直接 使用uboot 的命令,去改写内存。 uboot 命令的解析: 读命令, md[.b, .w. .l] address 注意: 这里的 .w 指的是两个字节,…

1.Seata 1.5.2 seata-server搭建

一:Seata基本介绍 Seata是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。 详见官网链接:https://seata.apache.org/zh-cn/ 1.历史项目里的使用经验: 之前公司里的oem用户对应的App…

时钟频率、AI采样率与AO更新率的关系

在数据采集和信号生成设备(如NI板卡)中,时钟频率、AI(模拟输入)采样率、以及AO(模拟输出)更新率是三个至关重要的参数。它们共同决定了设备在信号采集与生成时的性能表现。本文将详细分析它们之…

Yestar成都艺星引领行业星纪元:十大数字星品·高阶星技术震撼发布

近日,中国成都太古里Yestar十大数字星品高阶星技术AI科技3D Mapping全球发布会,震撼发布了十大数字星品高阶星技术升级,引领医美产业发展翻开崭新的一页。作为品牌成立19周年的庆典,这场科技与美学交融的盛会,标志着医…

ANSYS Workbench随机球体及过渡区三维混凝土细观建模

在ANSYS Workbench内建立随机球体及ITZ界面层混凝土细观模型可采用CAD随机球体颗粒&过渡区3D插件建模后将模型导入。 在插件内设置好模型参数后运行,插件会自动完成随机球体、界面过渡区、基体模型的建立。插件已将不同部件分图层进行建模,将模型整…

【PyCharm】和git安装教程

一、Git的下载和Pycharm工具中配置集成git和github 在Git官网下载安装包,如果官网下载速度慢,可以到百度云或者其他网页/迅雷等下载。 https://git-scm.com/download/win 下载完成后 按照默认一直下一步安装, 1、集成git 选择settings->Version C…

电脑监控多画面怎么弄?电脑监控如何多画面抓屏?四种方法分享给你了!

电脑监控多画面及多画面抓屏的实现方法多种多样,以下是四种常用的方法分享: 一、使用专业监控软件 优点: 功能强大:专业监控软件不仅支持多画面显示, 还具备屏幕快照、 屏幕录像、 远程操控等高级功能。 配置灵活&a…

中伟视界:皮带堵料监测的检测方法、理论依据与实践解析

皮带输送系统在矿山等工业环境中扮演着至关重要的角色。然而,皮带堵料问题常常导致生产效率降低、设备损坏,甚至可能引发安全事故。为了有效监测和预防皮带堵料,现代技术采用多种AI算法进行实时检测。本文将探讨几种皮带堵料监测的检测方法、…

Spring boot从0到1 - day01

前言 Spring 框架作为 Java 领域中最受欢迎的开发框架之一,提供了强大的支持来帮助开发者构建高性能、可维护的 Web 应用。 学习目标 Spring 基础 Spring框架是什么?Spring IoC与Aop怎么理解? Spring Boot 的快速构建 Spring 基础 学习…

【Python机器学习】NLP信息提取——正则模式

我们需要一种模式匹配算法,该算法可以识别与模式匹配的字符序列或词序列,以便从较长的文本字符串中“提取”它们。构建这种模式匹配算法的简单方法是在Python中,使用一系列if/else语句在字符串的逐个位置查找该符号(单词或字符&am…

解决Gson将长数字( json字符串)转换为科学记数法格式

Gson(又称Google Gson)是Google公司发布的一个开放源代码的Java库,主要用途为序列化Java对象为JSON字符串,或反序列化JSON字符串成Java对象。 依赖 Gradle: dependencies {implementation com.google.code.gson:gson:2.11.0 }…

为什么制造业要上MES,有哪些不得不上的理由吗?

关于为什么制造业要上MES,以及有哪些不得不上的理由吗?以下分为三个部分给大家详细讲解。 一、MES是什么? MES是一个综合性系统,连接企业的ERP系统与生产现场操作层面。它通过实时数据采集、分析和监控,将计划与执行紧…

精准营销,高效获客:Xinstall如何为App增长赋能?

在移动互联网时代,App的推广和运营面临着前所未有的挑战。如何在海量用户中精准定位目标客户?如何实时追踪用户行为,优化推广策略?Xinstall作为一站式App全渠道统计服务商,以全渠道数据统计为核心,为App运营…

继承1 2024_9_18

1.继承的基本用法 当需要继承的时候,我们就在派生类的后面加上一个权限父类,这个权限可以是公有,保护和私有,后面就是继承的父类.此时,下面的stu这个派生类,也就可以使用Person里面的方法了. 2.继承基类成员访问方式的变化 当父类被继承到派生类的时候,此时会根据继承方式的不…