Ruby - 检查Queue的内容而不清空它?

时间:2015-12-31 13:43:27

标签: ruby queue

Ruby只有Queue class只有几种方法:pushpoplengthempty?clear,{{1 },closeclosed?。 (加上同义词。)

我没有看到一种方法来检查队列对象的内容而不会弹出它们 - 可能是因为num_waiting类打算用于线程而不是其他对象。

或者我错了?有没有办法检查队列对象的内容而不弹出它们?

1 个答案:

答案 0 :(得分:2)

Queue类没有窥视功能。

如果您可以管理线程安全问题,则可以使用Array充当队列。

 q = Array.new
 q.push 1
 q.push 2
 q.push 3

 q.shift # Equivalent of Queue#pop
 #=> 1

 q.first # Equivalent to peek
 #=> 2

 q.first(2)
 #=> [2, 3]