⚠️ 自己写:用普通 list 会不会漏
(每道题开头都有同一段:上面的有界队列。)
线程安全队列把「查非空 + 取」锁成一步;普通 list 不锁,多个消费者「同时看到非空、一起 pop」时只有一个能拿到、其余落空。补全 outcome(have, ncons):队里 have 个、ncons 个消费者同时抢——拿到的 = min(have, ncons),落空的 = ncons 减去拿到的。队里 1 个、3 个消费者抢:
(每道题开头都有同一段:上面的有界队列。)
线程安全队列把「查非空 + 取」锁成一步;普通 list 不锁,多个消费者「同时看到非空、一起 pop」时只有一个能拿到、其余落空。补全 outcome(have, ncons):队里 have 个、ncons 个消费者同时抢——拿到的 = min(have, ncons),落空的 = ncons 减去拿到的。队里 1 个、3 个消费者抢:
全部评论