Sha256: 4d5245a98f1a58e10e60f38dfe92612d41d4d3befcd6163b0bf82348167ae8ed
Contents?: true
Size: 1.07 KB
Versions: 2
Compression:
Stored size: 1.07 KB
Contents
module DRbQS class Task # The object of this class is mainly used in DRbQS::Task::Generator#set # and calls Fiber.yield. class Registrar # @param [Hash] data Set instance variables from the hash. def initialize(data) data.each do |key, val| instance_variable_set("@#{key.to_s}", val) end end # Add tasks to server. # @param [DRbQS::Task,Array] arg DRbQS::Task object or array of DRbQS::Task objects, which is added to pool of tasks def add(arg) case arg when DRbQS::Task Fiber.yield(arg) when Array arg.each { |t| Fiber.yield(t) } else raise ArgumentError, "An argument must be DRbQS::Task or an array of DRbQS::Task." end end # Create an object of DRbQS::Task and add it. # The arguments are same as {DRbQS::Task}. def create_add(*args, &block) add(DRbQS::Task.new(*args, &block)) end # Wait finishes of all tasks in queue of a server. def wait Fiber.yield(:wait) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
drbqs-0.1.1 | lib/drbqs/task/registrar.rb |
drbqs-0.1.0 | lib/drbqs/task/registrar.rb |