Module: RubyIsForked::Process::ModuleMethods

Defined in:
lib/ruby_is_forked/process.rb

Constant Summary collapse

@@mutex =
Mutex.new
@@current =
nil
@@parent =
nil

Instance Method Summary collapse

Instance Method Details

#_currentObject



22
23
24
# File 'lib/ruby_is_forked/process.rb', line 22

def _current
  @@current
end

#currentObject



25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/ruby_is_forked/process.rb', line 25

def current
  @@mutex.synchronize do
    unless @@current
      @@current = OpenStruct.new(:process_id => $$, :variables => { }, :parent => parent)
      def @@current.[] k
        variables[k]
      end
      def @@current.[]= k, v
        variables[k] = v
      end
    end
    @@current
  end
end

#current=(x) ⇒ Object



40
41
42
# File 'lib/ruby_is_forked/process.rb', line 40

def current= x
  @@current = x
end

#parentObject



45
46
47
# File 'lib/ruby_is_forked/process.rb', line 45

def parent
  @@parent
end

#parent=(x) ⇒ Object



48
49
50
# File 'lib/ruby_is_forked/process.rb', line 48

def parent= x
  @@parent = x
end