gpt4 book ai didi

java - BlockingQueue 提供方法有时不会将项目添加到列表

转载 作者:行者123 更新时间:2023-11-29 06:50:22 27 4
gpt4 key购买 nike

我在多线程系统中使用 BlockingQueue,其中同步块(synchronized block)将项目添加到列表中。有时它不会将项目添加到列表中,它遗漏的项目是随机的。我尝试将以下行添加到代码中,然后它再也没有遗漏任何项目。

list.forEach(item -> logger.info(" In list "+item));

我觉得这种行为有点奇怪。有人可以帮我弄清楚如何解决丢失文件的问题吗?我不想不必要地遍历整个列表。我错过了什么吗?

最佳答案

offer 的文档说它有时可能会失败。

Inserts the specified element into this queue if it is possible to do so immediately without violating capacity restrictions, returning true upon success and false if no space is currently available.

如果您在尝试添加时可以阻止,请使用 put

Inserts the specified element into this queue, waiting if necessary for space to become available.

关于java - BlockingQueue 提供方法有时不会将项目添加到列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50452978/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com