请手写实现一个线程池,并基于它完成生产者消费者模型,要求处理队列空和满的情况,并讨论 unique_lock 与 condition_variable 的 wait 是否可能死锁。
考察说明
考察线程池实现、并发同步与条件变量死锁风险的理解
回答思路
- 正确实现线程池线程创建与任务队列
- 任务入队与取出的同步机制,处理空/满条件
- 使用 unique_lock 与 condition_variable::wait 正确配合避免死锁
- 分析异常或虚假唤醒场景下的安全性
本题已收录答题指导
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。