C#中异步回调函数用法实例
程序员文章站
2022-06-03 18:45:45
本文实例讲述了c#中异步回调函数用法。分享给大家供大家参考。具体如下:
static void main(string[] args)
{
func<...
本文实例讲述了c#中异步回调函数用法。分享给大家供大家参考。具体如下:
static void main(string[] args) { func<string,string> showmessage = showmessage; //设置了回调函数completed,不能有返回值 iasyncresult result = showmessage.begininvoke("测试异步委托",new asynccallback(completed),null); //半段异步是否结束 while(!result.iscompleted) { console.writeline("主线程可以进行其它的操作!"); } console.readline(); } static string showmessage(string x) { string current = string.format("当前线程id为{0}",thread.currentthread.managedthreadid); thread.sleep(3000); return string.format("{0},输入为{1}", current, x); } static void completed(iasyncresult result) { console.writeline("异步完成!"); //获取委托对象,并用endinvoke方法获取返回结果 asyncresult _result = (asyncresult) result; func<string, string> showmessage = (func<string, string>) _result.asyncdelegate; //结束异步操作并输出 console.writeline(showmessage.endinvoke(_result)); }
希望本文所述对大家的c#程序设计有所帮助。
下一篇: (1)Linux文件系统的目录组成