补全:map 跑一批

👁️ 2 人浏览 💬 0 人评论 ❤️ 添加收藏

(每道题开头都有同一段:上面的池小工具。)

贯穿全条的池小工具(标准库 ThreadPoolExecutor:固定 workers 个线程复用):

pool_sum(fn, args, workers)     池对每个参数跑 fn,交回所有结果之和(和与顺序无关,确定)
pool_map(fn, args, workers)     map 按提交顺序回结果(顺序确定)
one_future(fn, x, workers)      提交一个任务,交回它的 Future 的 result()
submit_all(fn, args, workers)   提交全部,按提交顺序 result() 收结果
pool_peak(ntasks, workers) = min(ntasks, workers)   一次最多几个在跑
reuse(ntasks, workers) = (workers, ntasks)          池建几个线程 / 手写要建几个

补全 run_batch(xs):建一个 workers=3 的池,用 map 对 xs 每个算 cube,按序交回结果列表。看 [1,2,3] 的结果。

提交你的答案
请登录后提交答案。
去登录
代码编辑器
Ctrl + Enter 运行
本次输入:
输出:

                        
👩‍🏫
AI
💬 题目评论

全部评论