补全:到点该跑哪些
(每道题开头都有同一段:上面的池小工具。) 本节的定时/后台任务模型: due(events, now) events=[(名字, 到点时刻)];到 now 为止该跑的任务名(at <= now,按名字排) run_order(e
补全:排出执行顺序
(每道题开头都有同一段:上面的池小工具。) 本节的定时/后台任务模型: due(events, now) events=[(名字, 到点时刻)];到 now 为止该跑的任务名(at <= now,按名字排) run_order(e
补全:周期任务跑几次
(每道题开头都有同一段:上面的池小工具。) 本节的定时/后台任务模型: due(events, now) events=[(名字, 到点时刻)];到 now 为止该跑的任务名(at <= now,按名字排) run_order(e
池比手写好在哪
用线程池比自己手写「一个任务一个线程」好在【0】。
什么时候手写更合适
反过来,自己手写线程比用池更合适的场景是【0】。
池 vs 手写建几个线程
(每道题开头都有同一段:上面的池小工具。) 贯穿全条的池小工具(标准库 ThreadPoolExecutor:固定 workers 个线程复用): pool_sum(fn, args, workers) 池对每个参数跑 fn,交回所
复用省了多少次建销
(每道题开头都有同一段:上面的池小工具。) 贯穿全条的池小工具(标准库 ThreadPoolExecutor:固定 workers 个线程复用): pool_sum(fn, args, workers) 池对每个参数跑 fn,交回所
补全:各建几个线程
(每道题开头都有同一段:上面的池小工具。) 贯穿全条的池小工具(标准库 ThreadPoolExecutor:固定 workers 个线程复用): 补全 counts(ntasks, workers):交回 (池建几个线程, 手写一任务一线
补全:省了多少次建销
(每道题开头都有同一段:上面的池小工具。) 贯穿全条的池小工具(标准库 ThreadPoolExecutor:固定 workers 个线程复用): 补全 saved(ntasks, workers):用池比手写省几次建线程(省 = 任务数
补全:用池跑批量(复用)
(每道题开头都有同一段:上面的池小工具。) 贯穿全条的池小工具(标准库 ThreadPoolExecutor:固定 workers 个线程复用): pool_sum(fn, args, workers) 池对每个参数跑 fn,交回所