0.0
No commit activity in last 3 years
No release in over 3 years
Little gem to enqueue jobs the easy way
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

>= 0
 Project Readme

DispatchQueue

DispatchQueue is a simple way to serialize jobs. It was done for crawling things, but could be used in any case that you need to do more than one work at a time.

COMPATIBILITY

Check build status to see support in different platforms

Build Status

USAGE

  • The threaded_way:
[1,2,3].threaded_each{|i|
  sleep 4-i
  puts i
}
3
2
1
[1,2,3].threaded_map{|i| sleep 4-i ; i } #=> [3,2,1]
  • The explicit way:
my_work_queue = DispatchQueue.new(lambda{ sleep 3 ; 5},  lambda{ 10 })
my_work_queue.sort #=> [5, 10]
  • The implicit way:
DQ[ lambda{ sleep 5 ; 3} , Proc.new{ sleep 6; 2 } ].sort #=> [2,3]

CHANGELOG

  • 1.1.0 Create [].threaded_each [].threaded_map (2011/09/22)
  • 1.0.5 Reduce implementation

LICENSE

"THE BEER-WARE LICENSE" (Revision 42): guillermo@cientifico.net wrote this file. As long as you retain this notice you can do whatever you want with this stuff. If we meet some day, and you think this stuff is worth it, you can buy me a beer in return Guillermo Álvarez Fernández