给收结果加把锁
场景:~/pool/坏.py 几个 worker 把结果 append 到同一个列表、没加锁(还有个读-睡-写的累加),跑几次结果之和忽多忽少。说明写了应有的和。
任务:给收结果那几行加 threading.Lock(with LOCK: 包住),让每次和都对。不许删 sleep。修好运行 ~/check(跑 3 次)。
可操作范围:只在分给你的这台实验机上操作。可以改家目录里的任何东西,不要动系统目录。实验机只有标准库的 Python 3;线程池用 concurrent.futures.ThreadPoolExecutor;跑脚本用 python3,卡住的程序用 timeout 10 python3 … 跑、ps 看它还活着。
提交:只提交那 8 位标记本身(形如 7F3A91C2),不要提交数字或名字,也不要提交说明文字。大小写不限。
⚠️ 提交预算:这次实验最多可以提交错 3 次。用完需要重新开始实验——环境和答案都会变。
完成条件:提交内容与本用户、本次实验环境生成的预期结果一致。
全部评论