• 15.什么是ForkJoin框架?


    什么是ForkJoin框架?

     

    什么是focusjoin框架,focusjoin是一个把大任务分割成若干个小任务,在对每个小任务得到的结果进行汇总,得到大任务结果的框架,简而言之就是分割任务和合并结果,

    focusjoin中focus表示分割任务,join表示合并结果。

    下面动画演示工作原理,这是一个大任务,根据focusjoin工作原理,将它一分为二,分割成两个子任务,

    再将这2个子任务分割成4个子任务,

    接着将4个子任务分割成8个子任务,任务还不够小,继续将8个子任务分割成16个子任务,

    这样就差不多了,将大任务分割完以后,接下来就是执行这些子任务,子任务全部执行完毕以后,

    将这16个子任务的执行结果合并成8个结果,

    再将这8个结果合并成4个结果,

    再将这4个结果合并成2个结果,

    最后将这2个结果合并成最终结果,最终结果就是大任务的结果。

     

    至此大任务执行完成,看完动画如果还不理解没关系,

    我们来看focusjoin流程图,用流程图来表示可能会更直观,这是我们要执行的大任务,将其分割成两个子任务,

    两个子任务继续分割,

    分割到足够小以后,

    将这些子任务提交给线程池去执行,这种方式远比让一个线程去执行大任务要高效的多,他们执行完以后,

    根据focusjoin的工作原理,合并其子任务执行结果,不断合并结果,

    直至合并出大任务的结果为止。至此大任务通过分割任务与合并结果的方式执行完毕。

    如果我们在流程图中间画一道分割线的话,上半部分就是在fork,也就是在分割任务,下半部分就是在join,也就是在合并结果,这次focusjoin流程图整个就是这样,

     总结

    最后来总结一下本节内容。


    本节介绍了什么是
    focusjoin框架,它的概述和工作原理,这里就不再赘述了。下一节介绍一个采用focusjoin框架的线程池,focusjoinPool 


      

    附录:

    笔记完整文本:

    什么是focusjoin框架,focusjoin是一个把大任务分割成若干个小任务,在对每个小任务得到的结果进行汇总,得到大任务结果的框架,简而言之就是分割任务和合并结果,focusjoin中focus表示分割任务,join表示合并结果。下面动画演示工作原理,这是一个大任务,根据focusjoin工作原理,将它一分为二,分割成两个子任务,再将这2个子任务分割成4个子任务,接着将4个子任务分割成8个子任务,任务还不够小,继续将8个子任务分割成16个子任务,这样就差不多了,将大任务分割完以后,接下来就是执行这些子任务,子任务全部执行完毕以后,将这16个子任务的执行结果合并成8个结果,再将这8个结果合并成4个结果,再将这4个结果合并成2个结果,最后将这2个结果合并成最终结果,最终结果就是大任务的结果。 至此大任务执行完成,看完动画如果还不理解没关系,我们来看focusjoin流程图,用流程图来表示可能会更直观,这是我们要执行的大任务,将其分割成两个子任务,两个子任务继续分割,分割到足够小以后,将这些子任务提交给线程池去执行,这种方式远比让一个线程去执行大任务要高效的多,他们执行完以后,根据focusjoin的工作原理,合并其子任务执行结果,不断合并结果,直至合并出大任务的结果为止。至此大任务通过分割任务与合并结果的方式执行完毕。如果我们在流程图中间画一道分割线的话,上半部分就是在fork,也就是在分割任务,下半部分就是在join,也就是在合并结果,这次focusjoin流程图整个就是这样,最后来总结一下本节内容。 本节介绍了什么是focusjoin框架,它的概述和工作原理,这里就不再赘述了。下一节介绍一个采用focusjoin框架的线程池,focusjoinPool

     

  • 相关阅读:
    元素的ID和Name有什么区别???[转自"天道酬勤"]
    招聘时会问到的问题
    关于asp.net开发B/S应用系统的思索和讨论
    软件文档知多少?
    C# 编码规范和编程好习惯
    [转]多层结构来开发ASP.NET程序
    ASP.NET页面间的传值的几种方法
    为sql server 表数据生成创建的储存过程(生成insert 脚本)
    XHTML+CSS应用教程——利用CSS实现双语导航条
    XHTML+CSS应用教程——CSS实现文字的双影
  • 原文地址:https://www.cnblogs.com/cj8357475/p/16032690.html
Copyright © 2020-2023  润新知