Task实战
一:场景描述
在一个文件下查找js文件中指定的关键字,并记录完成查找所需时间。完成此任务使用了3种写法,分别为:
1.使用一个task,在任务中进行for循环,循环调用异步处理方法。
2.先查找出文件路径,然后对每一个文件路径创建一个task,然后让这N个task并行处理。
3.也只利用一个task,在任务中进行for循环,循环调用同步业务方法。
二:运行结果:

三:结论:
如果利用一个task,那么无论task中执行的方法为同步方法还是异步方法,执行效率无明显差异,互有胜负。由此,从代码编写角度而言,优先编写同步代码,能降低代码的维护难度,且无明显性能短板。而task调用异步方法仅仅是为了满足能调用异步代码而存在,在执行层面来说,与调用同步方法无本质区别,仅此而已。
如果将多个任务拆分成task数组,然后利用task并行处理,则发现性能有明显提升,与1、3方法相比,整体性能提升了至少一个档次。由此而言,优先使用task并行处理,其次再利用task执行后台任务。
浙公网安备 33010602011771号