------art_61531_17516119.1149510564763
Content-Type: text/plain; charset=ISO-8859-1; format=flowed
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

From a ruby program I would like to start another process which should
continue to run even after the parent process dies.
Is there any way I could achive this?

From the child process I want to start an instance of SCGI server which
should continue to run even if the parent process dies.


After spending a while with google, I found following...

1. Fork is not present on Windows; will have to use Win32-process module for
enabling fork.
2. Threads are the way to achiveve platform independence in such cases.
3. Daemons module(support for POSIX systems) can be used for creating
daemons, but only on UNIX systems.
    http://rubyforge.org/projects/daemons/.



I tried using threads from one of the methods of a controller of an RoR
application; I have following method in my controller which gets called when
a link is clicked in one of the rhtml pages.

def servst
 threads 
 threads<< Thread.new {
 system 'cd C:\InstantRails\rails_apps\xyz & C:\InstantRails\ruby\bin\ruby
C:\InstantRails\ruby\bin\scgi_service'
 }
  threads.each { |t| t.join}
 end

when this method is called(on click of a link in an rhtml page), I.E.
progress bar goes on showing some progress, but never completes.
Note: The server I intend to start does gets started; but the current
session from where the server was started gets hung.
I need a way to start the server and continue traversing various links in
the same session.




Thanks in Advance,

Jatinder

------art_61531_17516119.1149510564763--