异步的两种写法: async 与 BeginInvoke
现在要实现异步只要用关键字async/await就可以轻松实现,在此之前需要用到委托/回调等一堆东西。
对一下是对比写法:
1 class Program 2 { 3 delegate string SendMessage(string msg); 4 static void Main(string[] args) 5 { 6 SendMessage sm = new SendMessage(DoAction); 7 sm.BeginInvoke("asyn asyn asyn ... ...", new AsyncCallback(CallBack), null); 8 9 DoAsync("async keywod.. ..."); 10 11 Console.WriteLine("do do do .... ..."); 12 13 Console.ReadLine(); 14 } 15 16 static void CallBack(IAsyncResult result) 17 { 18 SendMessage sm = (SendMessage)((System.Runtime.Remoting.Messaging.AsyncResult)result).AsyncDelegate; 19 Console.WriteLine(sm.EndInvoke(result)); 20 } 21 22 static string DoAction(string msg) 23 { 24 Thread.Sleep(3000); 25 return msg; 26 } 27 28 static Task<string> DoTask(string msg) 29 { 30 return Task.Run(() => 31 { 32 Thread.Sleep(1000); 33 return msg; 34 }); 35 } 36 37 static async void DoAsync(string msg) 38 { 39 Console.WriteLine(await DoTask(msg)); 40 }
转载于:https://www.cnblogs.com/AspDotNetMVC/p/5699462.html
异步的两种写法: async 与 BeginInvoke相关推荐
- 两种写法的效果一样,那么到底哪一种更好呢?
点击上方蓝色"程序猿DD",选择"设为星标" 回复"资源"获取独家整理的学习资料! 有时候,我们在写一些循环逻辑的时候,并不是按执行次数等作 ...
- Model层的两种写法
Model层的两种写法 第一种写法 namespace MyMVC.Models {public class Child{ //属性private int id;public int Id{get { ...
- controller 有两种写法,讨论一下两种写法的区别:
controller 有两种写法,讨论一下两种写法的区别: 写法 1: app.controller('myCtrl', function($scope, $location) { $scope.my ...
- Sql语句中 case when .. 的两种写法
在 SQL查询语句中, case 语句的两种写法(SqlServer 2005 下测试通过): 1. select (case 字段1 when a then 0 when b then 1 e ...
- 20210408:力扣(二分查找法的两种写法以及变体题目)
二分查找法的两种写法以及变体题目 写在前面 题目 思路与算法 代码实现 写在最后 写在前面 关于二分查找,真的是一个非常实用的查找算法,主要有两种写法,今天在总结时再次碰到,再次整理,方便后续查看复习 ...
- python装饰器带参数函数_python带参数装饰器的两种写法
python带参数装饰器的两种写法 前言 最近在实现一个装饰器的过程中发现了一个很有意思的地方,在博客里面分享出来 不同的写法 三层函数嵌套,实现了可传参数的一个装饰器. import logging ...
- sum 去重_总结leetcode上【排列问题】【组合问题】【子集问题】回溯算法去重的两种写法!...
本周小结!(回溯算法系列三)续集 在 本周小结!(回溯算法系列三) 中一位录友对 整颗树的本层和同一节点的本层有疑问,也让我重新思考了一下,发现这里确实有问题,所以专门写一篇来纠正,感谢录友们的积极交 ...
- Vue2基础-el与data的两种写法(HTML版)
目录 一.el的2种写法 二.data的2种写法 三. 一个重要的原则 Vue2基础全套教程合集:点击跳转 Vue2高级全套教程合集:点击跳转 一.el的2种写法 new Vue时候配置 ...
- vue的axios两种写法(不知道对不对,仅供参考)
vue的axios两种写法(不知道对不对,仅供参考) `methods () { getHomeInfo () { axios.get ('/api/index.json') ...
最新文章
- Ghost 系统的过程
- LTP--linux稳定性测试 linux性能测试 ltp压力测试
- 随手能做194个实验,不呆板,轻松撬动大智慧
- 前端学习(1701):前端系列javascript之闭包
- Java的垃圾回机机制(见过讲得最清楚的)
- ORACLE查看某个表空间里有哪些表
- A Python example for HiveServer2
- php扩展开发2--添加类
- 浅谈SpringMVC源码的SpringServletContainerInitializer的完整加载流程
- [100124]红楼梦:林黛玉与北静王【硬盘版】[带全CG存档+攻略]
- bom sap 替代项目_SAP BOM替代物料讲解
- MyEclipse10破解,亲测实用
- python自然语言处理之分类和标注词性5.1-5.3
- 访问控制(相关概述)
- 家长必备技能!教您限制孩子手机上的娱乐功能APP!
- 我的2011--虚荣、挣扎、总结和转变的一年
- 苹果手机隐私分析数据是什么_苹果和谷歌可能是我们在隐私操作系统上的最佳选择...
- 人工智能AI、机器学习模型理解
- 培训班出来的人后来都怎么样了?(八)
- IPTV解决方案之医院IPTV智慧电视系统
热门文章
- python爬虫流程-Python爬虫入门
- python工作招聘-爬了招聘网站之后,给你几点学习Python的建议
- python代码翻译-Python编程学习 -- 用十几行代码实现一个翻译器
- python面试常见问题-Python面试中常见的40个问题
- python小游戏源码-Python小游戏之300行代码实现俄罗斯方块
- python学习手册条件-Python学习手册(第4版)pdf
- python读取大文件-使用Python读取大文件的方法
- python中数据分析的流程为-利用python进行数据分析——histogram
- python装饰器作用-什么是Python装饰器,有什么作用?
- python 类-python--类