t = Thread.new {exec 'ruby '+path}
Thread.pass (t)
But I have the same result !!!
From ri for Kernel#exec:
“Replaces the current process by running the given external command.”
This means that when the external program stops, there’s no more a ruby
script
to go back to. The usual way to run an external program from a ruby
script is
to use either the backtics operator:
ruby C:\another_script.rb
or to use Kernel#system:
system “ruby C:\another_script.rb”
The difference between the two is that the former doesn’t display the
standard
output on screen, but returns it as return value of the method call;
system,
instead, displays the standard output normally and returns true if the
command
was executed correctly and false otherwise.
Note that the backtics support string interpolation, so you can write: