BeginInvoke和EndInvoke的作用是把一个同步方法改成异步执行,改造过程主要有3步:
·增加一个与方法对应的委托;
·增加一个AsyncCallback委托类型的回调函数(在函数体调用EndInvoke获取返回值);
·将方法的参数、回调函数和委托变量传给BeginInvoke;
下面是一个简单的示例:
代码如下 | 复制代码 |
/// /// /// |
参考很多类异步方法命名方式BeginXXX和EndXXX,对上面类稍做修改:
代码如下 | 复制代码 |
private delegate int TodoHandler(int a, int b); public Test() public IAsyncResult BeginTodo(int a, int b, AsyncCallback callback, object state) public int EndTodo(IAsyncResult ar) public class Program static public void Main(string[] args) Console.ReadKey(); |
BeginTodo方法返回类型为IAsyncResult,网上看到有人这么调用:
代码如下 | 复制代码 |
Console.ReadKey(); |
恋爱进行时九游版
恋爱进行时九游版是一款以模拟恋爱玩法为核心的角色扮演手游,精
皇室对决fr(Null’s Royale)
皇室对决fr,即皇室战争的私服变态版本,在该版本中玩家能够拥
养了个猫联机版游戏
养了个猫小游戏一个猫咪主题的模拟经营类型的手游,在游戏中我那
模拟山羊收获日小米版
模拟山羊收获日小米版是一个极其魔性的手机游戏,在游戏中玩家将
女配逆袭之素衣
女配逆袭之素衣是一款恋爱养成冒险的一款游戏,可以角色扮演,在