如何在Go中实现队列?

如何在Go中实现队列?,第1张

如何在Go中实现队列

Enqueue
失败时,您 仍在 增加
p.tail
,因此下一次它似乎不会失败-
这就解释了
false
第一个循环中的单曲(并弄乱了第二个循环中的所有内容)。原始算法说的
OVERFLOW
意思是“放弃一切”,而不是“只是继续前进,就好像什么都没发生一样”
;-)。

您需要做的就是

p.tail
如果已检查是否发生了故障,则递减-或将增加的值放在本地临时文件中,然后
p.tail
仅在
发生故障时才将其移动到,这可能会更优雅。这样一来,否则
Enqueue
不会 排队新的价值,但本身队列(而没有溢出值)仍是语义完整和正确的未来运营。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5600345.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-15
下一篇 2022-12-15

发表评论

登录后才能评论

评论列表(0条)

保存