需求 实际当中经常有这些场景:每天有一个大任务,这个大任务可以分成A,B,C,D四个小任务,A,B任务之间没有依赖关系,C任务依赖A,B任务的结 果,D任务依赖C任务的结果.一般的做法是,开两个终端同时执行A,B,两个都执行完了再执行C,最后再执行D.这样的话,整个的执行过程都需要人工参 加,并且得盯着各任务的进度.但是我们的很多任务都是在深更半夜执行的,通过写脚本设置crontab执行.其实,整个过程类似于一个有向无环图 (DAG).每个子任务相当于大任务中的一个流,任务的起点可以从没有度的节…