On Tue, 2013-07-16 at 00:44 +0900, avdi (Avdi Grimm) wrote:
> Issue #8639 has been reported by avdi (Avdi Grimm).

I thought this sounded familiar.  It has come up before:
http://bugs.ruby-lang.org/issues/4589

-- 
Alex


> 
> ----------------------------------------
> Feature #8639: Add Queue#each
> https://bugs.ruby-lang.org/issues/8639
> 
> Author: avdi (Avdi Grimm)
> Status: Open
> Priority: Normal
> Assignee: 
> Category: 
> Target version: 
> 
> 
> I was fiddling around with Queue the other day and realized it doesn't have an #each method. So I made one: https://github.com/ruby/ruby/pull/361
> 
> As for why, it makes for a convenient way to build consumer processes:
> 
>   inq = Queue.new
>   outq = Queue.new
>   doubler = Thread.new do
>     inq.each do |n|
>       outq << n + n
>     end
>   end
> 
> My PR also returns an Enumerator when no block is given, and handles the non_block argument.
> 
> I'm sure there's some good reason that this method wasn't there already, so feel free to explain.
> 
> Also, this is my first Ruby feature ticket so please let me know if I'm missing any points of protocol.
> 
> Thanks!
> 
>