Marschall-Pipes (Ruby-Pipes): Senden eines serialisierten Objekts an untergeordnete Prozesse

Ich muss ein Objekt in Ruby mit Marshal serialisieren und über Pipes an einen Unterprozess senden. Wie kann ich das machen?

Mein Code sieht folgendermaßen aus und meine Fragen stehen in Kommentaren:

data = Marshal.dump(data)
#call sub-process
`ruby -r a_lib -e 'a_method'` #### how to send the stdout to the subprocess?

Und die a_method sieht so aus:

def a_method
  ...
  data = Marshal.load(data) #### how to load the stdout of the parent process?
  ...
end

Antworten auf die Frage(2)

Ihre Antwort auf die Frage