-
Notifications
You must be signed in to change notification settings - Fork 416
Closed
Labels
bugA bug in the library or documentation.A bug in the library or documentation.
Milestone
Description
This appears to be a regression of #611
To reproduce:
gem install concurrent-ruby-edge -v 0.3.0
irb -rconcurrent-edgeArray.new(4) do
Concurrent::Promises.zip_futures(
*Array.new(5) do |i|
Concurrent::Promises.delay do
puts "starting #{i}"
sleep(i)
puts "done #{i}"
i
end
end
)
end.inject { |a, b| a.then { b }.flat }.value!I see this output:
starting 4
starting 3
starting 2
starting 0
done 0
starting 1
done 1
done 2
done 3
done 4
fatal: No live threads left. Deadlock?
from /Users/marcsiegel/.gem/ruby/2.3.1/gems/concurrent-ruby-edge-0.3.0/lib/concurrent/edge/promises.rb:756:in `sleep'
from /Users/marcsiegel/.gem/ruby/2.3.1/gems/concurrent-ruby-edge-0.3.0/lib/concurrent/edge/promises.rb:756:in `wait'
from /Users/marcsiegel/.gem/ruby/2.3.1/gems/concurrent-ruby-edge-0.3.0/lib/concurrent/edge/promises.rb:756:in `block in wait_until_resolved'
from /Users/marcsiegel/.gem/ruby/2.3.1/gems/concurrent-ruby-edge-0.3.0/lib/concurrent/edge/promises.rb:752:in `synchronize'
from /Users/marcsiegel/.gem/ruby/2.3.1/gems/concurrent-ruby-edge-0.3.0/lib/concurrent/edge/promises.rb:752:in `wait_until_resolved'
from /Users/marcsiegel/.gem/ruby/2.3.1/gems/concurrent-ruby-edge-0.3.0/lib/concurrent/edge/promises.rb:1177:in `wait_until_resolved!'
from /Users/marcsiegel/.gem/ruby/2.3.1/gems/concurrent-ruby-edge-0.3.0/lib/concurrent/edge/promises.rb:951:in `value!'
from (irb):12
from /Users/marcsiegel/.rubies/ruby-2.3.1/bin/irb:11:in `<main>'
- Operating system: mac
concurrent-rubyversion: 1.0.4concurrent-ruby-extinstalled: noconcurrent-ruby-edgeused: yes (0.3.0)
Metadata
Metadata
Assignees
Labels
bugA bug in the library or documentation.A bug in the library or documentation.