class Rscons::ThreadedCommand

If a builder returns an instance of this class from its run method, then Rscons will execute the command specified in a thread and allow other builders to continue executing in parallel.

Attributes

build_operation[RW]

@return [Hash]

Field for Rscons to store the build operation while this threaded
command is executing.
builder_info[R]

@return [Object]

Arbitrary object to store builder-specific info. This object value will
be passed back into the builder's #finalize method.
command[R]

@return [Array<String>]

The command to execute.
short_description[R]

@return [String]

Short description of the command. This will be printed to standard
output if the Environment's echo mode is :short.
system_env[R]

@return [Hash]

Environment Hash to pass to Kernel#system.
system_options[R]

@return [Hash]

Options Hash to pass to Kernel#system.
thread[RW]

@return [Thread]

The thread waiting on this command to terminate.

Public Class Methods

new(command, options = {}) click to toggle source

Create a ThreadedCommand object.

@param command [Array<String>]

The command to execute.

@param options [Hash]

Optional parameters.

@option options [Object] :builder_info

Arbitrary object to store builder-specific info. This object value will
be passed back into the builder's #finalize method.

@option options [String] :short_description

Short description of the command. This will be printed to standard
output if the Environment's echo mode is :short.

@option options [Hash] :system_env

Environment Hash to pass to Kernel#system.

@option options [Hash] :system_options

Options Hash to pass to Kernel#system.
# File lib/rscons/threaded_command.rb, line 54
def initialize(command, options = {})
  @command = command
  @builder_info = options[:builder_info]
  @short_description = options[:short_description]
  @system_env = options[:system_env]
  @system_options = options[:system_options]
end