This gem has been written keeping semplicity in mind
It implements Thread Pool Pattern described here http://en.wikipedia.org/wiki/Thread_pool_pattern
Recommended for I/O activities are easily parallelizable, such as downloading remote resources, web scraping, bulk API calls, etc
Add this line to your application's Gemfile:
gem 'easy_threadpool'
And then execute:
$ bundle
Or install it yourself as:
$ gem install easy_threadpool
require "easy_threadpool"
pool = Thread.pool(10)
20.times {
pool.process do
# Put your slow task here
sleep rand(0.3..2)
puts "Task consumed by worker ##{Thread.current[:id]}"
end
}
pool.shutdown
- Fork it
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create new Pull Request