protected void Main() { //首先定义一个方法的封装..后边的LongTimeMethod是被封装的方法.. Func<int> longTimeAction = new Func<int>(LongTimeMethod); //定义一个异步操作.. asynResult //用上边的longTimeAction封装 来开启这个异步操作.. IAsyncResult asynResult = longTimeAction.BeginInvoke(null, null); //在上边的开启异步操作后..程序会另外启动一个线程来执行前边的封装方法..这个方法是委托给这个新线程的 //得到了异步请求的结果..返回给 ret int ret = longTimeAction.EndInvoke(asynResult); } int LongTimeMethod() { return 1; }
protected void Main () { //首先定义一个方法的封装..后边的LongTimeMethod是被封装的方法.. Func<int> longTimeAction = new Func<int>(LongTimeMethod); //定义一个异步操作.. asynResult //用上边的longTimeAction封装 来开启这个异步操作.. int ss=0; IAsyncResult asynResult = longTimeAction.BeginInvoke((result) => { ss = longTimeAction.EndInvoke(result); }, null); //在上边的开启异步操作后..程序会另外启动一个线程来执行前边的封装方法..这个方法是委托给这个新线程的 //得到了异步请求的结果..返回给 ss } int LongTimeMethod() { return 1; }