• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#异步编程的实现方式(6)——层次任务

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

任务也可以构成一个层次结构。一个任务启动一个新任务时,就启动了一个层次结构。下面的代码段在父任务内部新建一个任务。创建子任务的代码与创建父任务的代码相同,唯一的区别是这个任务从另一个任务内部创建:

string[] args)
   2: {
new Task(ParentTask);
   4:     parentTask.Start();
   5:  
   6:     Console.Read();
   7: }
   8:  
void ParentTask()
  10: {
);
new Task(ChildTask);
  13:     childTask.Start();
  14:     Thread.Sleep(2000);
);
  16: }
  17:  
void ChildTask()
  19: {
);
  21:     Thread.Sleep(4000);
);
  23: }

结果如图:

总体来说,层次任务没有新东西,但需要注意的是,父任务在子任务之前结束(如上例),父任务的状态变为WaitingForChildrenToComplete,直到所有子任务结束,父任务状态才变为RunToCompletion。如果父任务中创建子任务时,TaskCreationOptions枚举为DetectedFromParent,上述无效。


参考资料:《C#高级编程》,http://topic.csdn.net/u/20120306/20/24961e41-5bf2-4b81-b45b-3cdd714b12d8.html

本文源代码:


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
[C#]浅析ref、out参数发布时间:2022-07-10
下一篇:
C#Selenium学习发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap