博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
异步委托与多线程
阅读量:6820 次
发布时间:2019-06-26

本文共 670 字,大约阅读时间需要 2 分钟。

private delegate void AsyncEventHandler();         AsyncEventHandler asy = new AsyncEventHandler(delegate                {                    new ShellApplication().Run();                });          IAsyncResult ia = asy.BeginInvoke(new AsyncCallback(CallbackMethod), asy);private void CallbackMethod(IAsyncResult ar)        {            AsyncEventHandler dlgt = (AsyncEventHandler)ar.AsyncState;            dlgt.EndInvoke(ar);                    }

   异步委托多用在IO等耗时操作上,并且要求函数调用能立即返回,否则像上例中开启一个Form窗体,ia.IsCompleted会永远false,除非该窗体dispose,异步委托才会执行完。

使用多线程,应用较为广泛,还可以直接对线程进行操作,设置线程的各种属性等,而异步委托beginInvoke后,只能等它自己结束。异步委托是一种特殊的多线程应用。

大家学习过程中要注意某些技术应用的特点和场合,不能看着不错就拿来用了。

好钢要用到刀刃上。

 

转载地址:http://qkszl.baihongyu.com/

你可能感兴趣的文章
markdown基本语法
查看>>
EasyUI DataGrid 分页示例
查看>>
ID基本操作(出血的定义)(置入图片)(添加页面)5.15
查看>>
0913数据库约束之主键 外键 非空 默认值约束 唯一约束 级联操作 表与表之间的联系...
查看>>
bzoj千题计划204:bzoj2813: 奇妙的Fibonacci
查看>>
卡尔曼滤波器原理之基本思想(一)
查看>>
微信 {"errcode":40029,"errmsg":"invalid code, hints: [ req_id: Cf.y.a0389s108 ]"}
查看>>
appserv安装
查看>>
SQL Server 动态行转列(参数化表名、分组列、行转列字段、字段值)
查看>>
2018-2019-2 20165325 《网络对抗技术》 Exp5:MSF基础应用
查看>>
Java基础扫盲系列(二)—— Java中BigDecimal和浮点类型
查看>>
如何在直播中解决黑屏、花屏、闪屏问题 | 直播疑难杂症排查
查看>>
js获取浏览器高度和宽度值(多浏览器)
查看>>
Deep learning:十六(deep networks)
查看>>
▲移动web前端开发
查看>>
LeetCode: Palindrome Partition
查看>>
推荐使用C++ 11
查看>>
C#中的接口
查看>>
Vue 实例暴露了一些有用的实例属性与方法。这些属性与方法都有前缀 $,以便与代理的 data 属性区分...
查看>>
从零开始做SSH项目(二)
查看>>