
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
	<head><meta forua="true" http-equiv="Cache-Control" content="max-age=0" /></head><card id="MainCard" title="&#x6B22;&#x8FCE;&#x5149;&#x4E34;"><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a><br/>&nbsp;</p><p><b>&#x6807;&#x9898;&#x3A;</b> &#x42;&#x65;&#x67;&#x69;&#x6E;&#x49;&#x6E;&#x76;&#x6F;&#x6B;&#x65;&#x548C;&#x45;&#x6E;&#x64;&#x49;&#x6E;&#x76;&#x6F;&#x6B;&#x65;&#x65B9;&#x6CD5;&#x5B66;&#x4E60;&#x5C0F;&#x7ED3;</p><p><b>&#x4F5C;&#x8005;&#x3A;</b> &#x64;&#x6E;&#x61;&#x77;&#x6F;</p><p><b>&#x65E5;&#x671F;&#x3A;</b> &#x32;&#x30;&#x31;&#x34;&#x2D;&#x30;&#x38;&#x2D;&#x31;&#x37;&#x20;&#x31;&#x31;&#x3A;&#x33;&#x32;&#x20;&#x50;&#x4D;</p><p><b>&#x5206;&#x7C7B;&#x3A;</b> <a href="wap.asp?do=showLog&amp;cateID=16">&#x57;&#x69;&#x6E;&#x7F16;&#x7A0B;</a></p><p><b>&#x5185;&#x5BB9;&#x3A;</b> BeginInvoke&#x548C;EndInvoke&#x7684;&#x4F5C;&#x7528;&#x662F;&#x628A;&#x4E00;&#x4E2A;&#x540C;&#x6B65;&#x65B9;&#x6CD5;&#x6539;&#x6210;&#x5F02;&#x6B65;&#x6267;&#x884C;&#xFF0C;&#x6539;&#x9020;&#x8FC7;&#x7A0B;&#x4E3B;&#x8981;&#x6709;3&#x6B65;&#xFF1A;<br/>&#xB7;&#x589E;&#x52A0;&#x4E00;&#x4E2A;&#x4E0E;&#x65B9;&#x6CD5;&#x5BF9;&#x5E94;&#x7684;&#x59D4;&#x6258;&#xFF1B;<br/>&#xB7;&#x589E;&#x52A0;&#x4E00;&#x4E2A;AsyncCallback&#x59D4;&#x6258;&#x7C7B;&#x578B;&#x7684;&#x56DE;&#x8C03;&#x51FD;&#x6570;(&#x5728;&#x51FD;&#x6570;&#x4F53;&#x8C03;&#x7528;EndInvoke&#x83B7;&#x53D6;&#x8FD4;&#x56DE;&#x503C;)&#xFF1B;<br/>&#xB7;&#x5C06;&#x65B9;&#x6CD5;&#x7684;&#x53C2;&#x6570;&#x3001;&#x56DE;&#x8C03;&#x51FD;&#x6570;&#x548C;&#x59D4;&#x6258;&#x53D8;&#x91CF;&#x4F20;&#x7ED9;BeginInvoke&#xFF1B;<br/>&#x4E0B;&#x9762;&#x662F;&#x4E00;&#x4E2A;&#x7B80;&#x5355;&#x7684;&#x793A;&#x4F8B;&#xFF1A;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;public class Test<br/>{<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &#x539F;&#x59CB;&#x65B9;&#x6CD5;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;/summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;returns&gt;&lt;/returns&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;private int Todo()<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return 100;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &#x589E;&#x52A0;&#x65B9;&#x6CD5;&#x5BF9;&#x5E94;&#x7684;&#x59D4;&#x6258;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;/summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;returns&gt;&lt;/returns&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;delegate int TodoHandler();<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &#x589E;&#x52A0;AsyncCallback&#x59D4;&#x6258;&#x7C7B;&#x578B;&#x7684;&#x56DE;&#x8C03;&#x51FD;&#x6570;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;/summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;param name=&#34;ar&#34;&gt;&lt;/param&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;private void TodoCallback(IAsyncResult ar)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TodoHandler handler = (TodoHandler)ar.AsyncState;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(handler.EndInvoke(ar));<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &#x8C03;&#x7528;&#x793A;&#x4F8B;<br/>&nbsp;&nbsp;&nbsp;&nbsp;/// &lt;/summary&gt;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public void InvokeTest()<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;TodoHandler handler = new TodoHandler(Todo);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;handler.BeginInvoke(TodoCallback, handler);<br/>&nbsp;&nbsp;&nbsp;&nbsp;}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<br/>}<br/>&#x53C2;&#x8003;&#x5F88;&#x591A;&#x7C7B;&#x5F02;&#x6B65;&#x65B9;&#x6CD5;&#x547D;&#x540D;&#x65B9;&#x5F0F;BeginXXX&#x548C;EndXXX&#xFF0C;&#x5BF9;&#x4E0A;&#x9762;&#x7C7B;&#x7A0D;&#x505A;&#x4FEE;&#x6539;&#xFF1A;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;public class Test<br/>{<br/>&nbsp;&nbsp;&nbsp;&nbsp;public int Todo(int a, int b)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return a + b;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;private delegate int TodoHandler(int a, int b);<br/>&nbsp;&nbsp;&nbsp;&nbsp;private TodoHandler _todo = null;<br/>&nbsp;&nbsp;&nbsp;&nbsp;public Test()<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;_todo = Todo;<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;public IAsyncResult BeginTodo(int a, int b, AsyncCallback callback, object state)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return _todo.BeginInvoke(a, b, callback, state);<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;public int EndTodo(IAsyncResult ar)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;return _todo.EndInvoke(ar);<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>}<br/>public class Program<br/>{<br/>&nbsp;&nbsp;&nbsp;&nbsp;static void TodoCallback(IAsyncResult ar)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Test test = (Test)ar.AsyncState;<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(test.EndTodo(ar));<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>&nbsp;&nbsp;&nbsp;&nbsp;static public void Main(string[] args)<br/>&nbsp;&nbsp;&nbsp;&nbsp;{<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Test test = new Test();<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;test.BeginTodo(2, 3, TodoCallback, test);<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Console.ReadKey();<br/>&nbsp;&nbsp;&nbsp;&nbsp;}<br/>}<br/>BeginTodo&#x65B9;&#x6CD5;&#x8FD4;&#x56DE;&#x7C7B;&#x578B;&#x4E3A;IAsyncResult&#xFF0C;&#x7F51;&#x4E0A;&#x770B;&#x5230;&#x6709;&#x4EBA;&#x8FD9;&#x4E48;&#x8C03;&#x7528;&#xFF1A;<br/>&#x590D;&#x5236;&#x5185;&#x5BB9;&#x5230;&#x526A;&#x8D34;&#x677F; &#x7A0B;&#x5E8F;&#x4EE3;&#x7801;static public void Main(string[] args)<br/>{<br/>&nbsp;&nbsp;&nbsp;&nbsp;Test test = new Test();<br/>&nbsp;&nbsp;&nbsp;&nbsp;IAsyncResult result = test.BeginTodo(2, 3, null, null);<br/>&nbsp;&nbsp;&nbsp;&nbsp;Console.WriteLine(test.EndTodo(result));<br/>&nbsp;&nbsp;&nbsp;&nbsp;Console.ReadKey();<br/>}</p><p> + <a href="#CommentCard">&#x67E5;&#x770B;&#x5F53;&#x524D;&#x65E5;&#x5FD7;&#x8BC4;&#x8BBA;</a> (0)</p><p>&nbsp;<br/><br/><a href="wap.asp?do=Login">&#x767B;&#x5F55;</a></p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.063&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card><card id="postCommentCard"><p><b>&#x6807;&#x9898;&#x3A;</b> <a href="#MainCard">&#x42;&#x65;&#x67;&#x69;&#x6E;&#x49;&#x6E;&#x76;&#x6F;&#x6B;&#x65;&#x548C;&#x45;&#x6E;&#x64;&#x49;&#x6E;&#x76;&#x6F;&#x6B;&#x65;&#x65B9;&#x6CD5;&#x5B66;&#x4E60;&#x5C0F;&#x7ED3;</a></p><p><br/>你没有权限发表评论</p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.063&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card><card id="CommentCard"><p>&#x6682;&#x65E0;&#x8BC4;&#x8BBA;</p><p><a href="#MainCard">&#x8FD4;&#x56DE;</a></p><p><br/>&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;&#x2500;</p><p><a href="wap.asp">&#x6728;&#x5B50;&#x5C4B;</a></p><p><a href="http://www.pjhome.net/wap.asp">PJBlog3&nbsp;v3.2.9.518</a>&nbsp;Inside.</p><p>Processed&nbsp;In&nbsp;0.063&nbsp;ms</p><do type="prev" label="&#x8FD4;&#x56DE;"><prev/></do></card>
</wml>
