让空队列的消费者等,别报错

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

场景:~/pc/坏.py 的消费者用 if 队列非空: pop 取数据,多个消费者时偶尔对空 pop 报 IndexError。

任务:改成「空了就等」的取法(用 queue.Queue 的阻塞 get,或条件变量的 wait_for),让它不再报错、把该处理的都处理完。修好运行 ~/check。

可操作范围:只在分给你的这台实验机上操作。可以改家目录里的任何东西,不要动系统目录。实验机只有标准库的 Python 3;跑脚本用 python3(写生产者消费者用 threading + queue.Queue),卡住的程序用 timeout 10 python3 … 跑、ps 看它还活着。

提交:只提交那 8 位标记本身(形如 7F3A91C2),不要提交数字或名字,也不要提交说明文字。大小写不限。

⚠️ 提交预算:这次实验最多可以提交错 3 次。用完需要重新开始实验——环境和答案都会变。

完成条件:提交内容与本用户、本次实验环境生成的预期结果一致。

提交你的答案
请登录后提交答案。
去登录
👩‍🏫
AI
💬 题目评论

全部评论