Task用法之任务等待wait实例

互联网 18-5-18
1.Wait 用法

默认情况下,Task 是有线程池中的异步线程执行,是否执行完成,可以通过Task的的属性IsCompleted 来判断,

如果想在子线程工作完成之后,在进行后续主线程工作可以通过调用task.Wait() 来等待线程完成,调用Wait 后,当前线程会被阻塞,直到到子线程完成。

代码示例:

 static void Main(string[] args)          {              Task t = Task.Run(() =>                {                    Thread.Sleep(500);                    Console.WriteLine("Lance");                    Thread.Sleep(500);                });              Console.WriteLine("t.IsCompleted=" + t.IsCompleted);              t.Wait();              Console.WriteLine("t.IsCompleted=" + t.IsCompleted);          }

运行结果: 

 

2.Wait 设定等待时间

 static void Main(string[] args)          {              Task t = Task.Run(() =>                {                    Thread.Sleep(500);                    Console.WriteLine("Lance");                    Thread.Sleep(500);                });              Console.WriteLine("t.IsCompleted=" + t.IsCompleted);              bool IsComplate= t.Wait(200);              Console.WriteLine("wait 200毫秒后 t.IsCompleted=" + t.IsCompleted);              Thread.Sleep(1000);              Console.WriteLine("t.IsCompleted=" + t.IsCompleted);          }

运行结果:

以上就是Task用法之任务等待wait实例的详细内容,更多内容请关注技术你好其它相关文章!

来源链接:
免责声明:
1.资讯内容不构成投资建议,投资者应独立决策并自行承担风险
2.本文版权归属原作所有,仅代表作者本人观点,不代表本站的观点或立场
标签: 用法
上一篇:php获取远程图片并下载保存到本地的方法分析 下一篇:死锁的概念与死锁的条件

相关资讯