调度器。测试。豫
yuyan · 108 行 · 10719 字节 · UTF-8
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108
寻观「标准库」之书。
寻观「标准库」之「控制」之「异步」之书。
寻观「标准库」之「操作系统」之「异步子进程」之书。
寻观「构建基础」之「调度器」之书。
寻观「构建基础」之「并行编译」之书。
「断言」乃化「爻」而化「字符串」而「有」也。
「断言」者会「条件」而会「消息」而若「条件」则「元」否则「发生事故」授以「有」于「消息」也。
「:文言:记启毕之数,以验限额;相待之事不得先启。汉语:记录在途任务,验证并发上限和依赖顺序。:」
「在途」者「新引用」授以「整数」于「零」也。
「峰值」者「新引用」授以「整数」于「零」也。
「完成数」者「新引用」授以「整数」于「零」也。
「测试任务」乃化「字符串」而化(「列」于「字符串」)而「构建任务」也。
「测试任务」者会「名称」而会「依赖」而
「新构建任务」于「名称」于「依赖」于(会「无」而
虑「无」者(若「串相等」于「名称」于『丙』
则「断言」于(「等于」于(「读引用」授以「整数」于「完成数」)于「二」)于『依赖尚未完成即启动』否则「元」)而
虑「数」者「加」于(「读引用」授以「整数」于「在途」)于「一」而
虑「无」者「写引用」于「在途」于「数」而
虑「无」者「写引用」于「峰值」于(「整数最大值」于「数」于(「读引用」授以「整数」于「峰值」))而
「异步获取输出」于『/bin/sh』于((「列」【『-c』,『sleep 1』】)))
于(会「结果」而
虑「无」者「写引用」于「在途」于(「减」于(「读引用」授以「整数」于「在途」)于「一」)而
「写引用」于「完成数」于(「加」于(「读引用」授以「整数」于「完成数」)于「一」))
也。
「图」者「新引用」授以(「列」于「构建任务」)于
((「列」【(「测试任务」于『甲』于「罄」),(「测试任务」于『乙』于「罄」),(「测试任务」于『丙』于((「列」【『甲』,『乙』】)))】))也。
「断言」于(「等于」于(「执行任务图」于「图」于「二」)于「零」)于『任务图失败』。
「断言」于(「等于」于(「读引用」授以「整数」于「峰值」)于「二」)于『未达到并发数二』。
「断言」于(「等于」于(「读引用」授以「整数」于「完成数」)于「三」)于『任务重复或遗漏』。
「不应启动」者「新引用」授以「爻」于「阴」也。
「失败图」者「新引用」授以(「列」于「构建任务」)于
((「列」【(「新构建任务」于『失败』于「罄」于
(会「无」而「立即完成」授以「子进程结果」于(「零」与「九」与『』与『预期错误』))于(会「结果」而「元」)),(「新构建任务」于『不应启动』于「罄」于
(会「无」而虑「无」者「写引用」于「不应启动」于「阳」而
「立即完成」授以「子进程结果」于(「零」与「零」与『』与『』))于(会「结果」而「元」))】))也。
「断言」于(「等于」于(「执行任务图」于「失败图」于「一」)于「九」)于『失败码丢失』。
「断言」于(「非」于(「读引用」授以「爻」于「不应启动」))于『失败后继续启动任务』。
「环图」者「新引用」授以(「列」于「构建任务」)于
((「列」【(「测试任务」于『环』于((「列」【『环』】)))】))也。
「断言」于(「等于」于(「执行任务图」于「环图」于「二」)于「一」)于『循环依赖未报错』。
「:文言:在途者虽遇他事败,犹当收之。汉语:启动异常后仍须收拢已经启动的任务。:」
「异常图」者「新引用」授以(「列」于「构建任务」)于
((「列」【(「测试任务」于『在途任务』于「罄」),(「新构建任务」于『启动异常』于「罄」于
(会「无」而「发生事故」授以(「异步任务」于「子进程结果」)于『预期启动异常』)
于(会「结果」而「元」))】))也。
「断言」于(「等于」于(「执行任务图」于「异常图」于「二」)于「一」)于『启动异常未传播』。
「断言」于(「等于」于(「读引用」授以「整数」于「在途」)于「零」)于『失败时未回收在途任务』。
「动态图」者「新引用」授以(「列」于「构建任务」)于「罄」也。
「发现任务」者「新构建任务」于『发现』于「罄」于
(会「无」而「立即完成」授以「子进程结果」于(「零」与「零」与『』与『』))于
(会「结果」而「写引用」于「动态图」于(「结尾多」授以「构建任务」于
(「读引用」授以(「列」于「构建任务」)于「动态图」)于(「测试任务」于『动态任务』于((「列」【『发现』】)))))也。
「写引用」于「动态图」于((「列」【「发现任务」】))。
「断言」于(「等于」于(「执行任务图」于「动态图」于「一」)于「零」)于『动态任务图失败』。
「断言」于(「任务已成功」于(「读引用」授以(「列」于「构建任务」)于「动态图」)于『动态任务』)于『动态任务遗漏』。
「断言」于(「串组相等」于(「依赖输出行」于『/含 空格/甲。豫「:换行:」/乙。豫「:换行:」』)于
((「列」【『/含 空格/甲。豫』,『/乙。豫』】)))于『路径空格被拆开』。
「打印行」于『豫构调度器测试通过』。
「:文言:就绪非所阻,已启不复数;败则勿称待槽。汉语:验证就绪统计随依赖状态转换,不把运行中或失败停派任务算作等待槽位。:」
「就绪甲」者「测试任务」于『就绪甲』于「罄」也。
「就绪乙」者「测试任务」于『就绪乙』于「罄」也。
「就绪丙」者「测试任务」于『就绪丙』于(「列」【『就绪甲』】)也。
「就绪图」者「列」【「就绪甲」,「就绪乙」,「就绪丙」】也。
「验就绪数」乃化「整数」而「有」也。
「验就绪数」者会「数」而「断言」于(「等于」于(「长度」授以「构建任务」于(「就绪任务」于「就绪图」))于「数」)于『就绪任务计数错误』也。
「验就绪数」于「二」。
「写引用」授以「整数」于(「就绪甲」中「四」)于「一」。
「验就绪数」于「一」。
「写引用」授以「整数」于(「就绪甲」中「四」)于「二」。
「验就绪数」于「二」。
「写引用」授以「整数」于(「就绪乙」中「四」)于「三」。
「验就绪数」于「零」。
「运行参数」乃「列」于「字符串」也。
「运行参数」者(「列」【『--』,『--parallel』,『主。豫』】)也。
「断言」于(「串组相等」于
(「过滤调度参数」于(「过滤编译输入」于『主。豫』于
(「缀」于『主。豫』于(「缀」于『--parallel』于「运行参数」))))于「运行参数」)于『程序运行参数被误删』。
「:文言:后入之急事亦先,未就绪者不塞路。汉语:单槽实跑任务图,验证动态高优先级、同级稳定顺序及依赖约束,而非只测试排序函数。:」
「优先记录」者「新引用」授以(「列」于「字符串」)于「罄」也。
「优先任务」乃化「整数」而化「字符串」而化(「列」于「字符串」)而「构建任务」也。
「优先任务」者会「级」而会「名」而会「依赖」而
「新优先构建任务」于「级」于「名」于「依赖」于(会「无」而
虑「无」者「写引用」于「优先记录」于(「结尾多」授以「字符串」于(「读引用」于「优先记录」)于「名」)而
「立即完成」授以「子进程结果」于(「零」与「零」与『』与『』))于(会「果」而「元」)也。
「优先图」者「新引用」授以(「列」于「构建任务」)于「罄」也。
「优先发现」者「新优先构建任务」于「零」于『发现』于「罄」于(会「无」而
虑「无」者「写引用」于「优先记录」于(「结尾多」授以「字符串」于(「读引用」于「优先记录」)于『发现』)而
「立即完成」授以「子进程结果」于(「零」与「零」与『』与『』))于(会「果」而
「写引用」于「优先图」于(「结尾多」授以「构建任务」于(「读引用」于「优先图」)于(「优先任务」于「零」于『新依赖』于「罄」)))也。
「写引用」于「优先图」于(「列」【
「优先任务」于「二」于『类型甲』于「罄」,「优先任务」于「二」于『类型乙』于「罄」,
「优先任务」于「六」于『后端』于「罄」,「优先任务」于「一」于『解析』于「罄」,
「优先任务」于「零」于『被阻高优先级』于(「列」【『后端』】),「优先发现」】)。
「断言」于(「等于」于(「执行任务图」于「优先图」于「一」)于「零」)于『优先任务图失败』。
「断言」于(「串组相等」于(「读引用」于「优先记录」)于
(「列」【『发现』,『新依赖』,『解析』,『类型甲』,『类型乙』,『后端』,『被阻高优先级』】))于『阶段优先级、同级顺序或动态任务派发错误』。
「断言」于(「非」于(「合并前端参数」于(「列」【『--frontend-tasks=combined』,『--frontend-tasks=split』】)于「阳」))于『前端粒度后设未覆盖前设』。
「断言」于(「合并前端参数」于(「列」【『--』,『--frontend-tasks=split』】)于「阳」)于『误读程序运行参数的前端粒度』。
「打印行」于『阶段优先派发与粒度参数测试通过』。