Skip to content

Instantly share code, notes, and snippets.

@kivikakk
Created June 15, 2017 08:56
Show Gist options
  • Select an option

  • Save kivikakk/aa57ec794f18f7b5f48da282d56a2acf to your computer and use it in GitHub Desktop.

Select an option

Save kivikakk/aa57ec794f18f7b5f48da282d56a2acf to your computer and use it in GitHub Desktop.
>> e = Enumerator.new do |y|
?> y << 1
>> y << 2
>> sleep 10
>> y << 3
>> end
=> #<Enumerator: #<Enumerator::Generator:0x007ffcd3801100>:each>
>> puts Time.now; puts e.take(1).to_a; puts Time.now
2017-06-15 18:56:15 +1000
1
2017-06-15 18:56:15 +1000
=> nil
>> puts Time.now; puts e.take(2).to_a; puts Time.now
2017-06-15 18:56:19 +1000
1
2
2017-06-15 18:56:19 +1000
=> nil
>> puts Time.now; puts e.take(3).to_a; puts Time.now
2017-06-15 18:56:21 +1000
1
2
3
2017-06-15 18:56:31 +1000
=> nil
>>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment