From: Jatinder Singh Date: 2006-06-13T13:39:38+09:00 Subject: Re: win32-open3 module: giving a name to a Process ------=_Part_96439_3179936.1150173574557 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline Hi, Now I need to create a process with a name(the process is an instance of webrick server). I can create a webrick instance using following command,(this is not a blocking call, it returns immediately..thats what I want) input, out, err, @pid = Open4.popen4('D:\ruby\bin\ruby C:\InstantRails\rails_apps\app1\script\server -p 3002') Now at later point of time I would like to kill this process which I can ofcourse do using Process.kill(9, @pid) It may very well happen that process was killed externally, hence in that case I am first finding out if process with @pid is still alive by calling Process.kill(0,@pid) (it gives an error it the process is not alive, which I am catching) My assumption in above case is that the webrick instance I had created earlier using popen4 method is still running with @pid; it may very well happen that webrick instance was killed externally and @pid was taken up by some other process; this will result in killing of a innocent process. I was thinking if I could assign a name to a process and then later on while killing, verify the name, then that would solve the problem. But how do I assign a name to a process while creating a process using popen4 method and then how do I find the pid of a process by name. Help is appreciated! Regards, Jatinder On 6/12/06, Jatinder Singh wrote: > > Thanks this open3.so works! > > -Jatinder > > > > On 6/12/06, Park Heesob wrote: > > > > > > > > Hi, > > > > >From: "Jatinder Singh" > > >Reply-To: ruby-talk@ruby-lang.org > > >To: ruby-talk@ruby-lang.org (ruby-talk ML) > > >Subject: Re: Instructions for downloading and installing win32-open3 > > module > > >Date: Mon, 12 Jun 2006 21:45:52 +0900 > > > > > >Hi, > > > > > >I was able to get around with the installation by renaming the so file > to > > >open3.so and putting it in the mentioned folder, but now on executing > the > > >ruby program I get following error, > > > > > > > > > > > >check.rb:3: [BUG] Segmentation fault > > >ruby 1.8.4 (2005-12-24) [i386-mswin32] > > > > > > > > >This application has requested the Runtime to terminate it in an > unusual > > >way. > > >Please contact the application's support team for more information. > > >Following are the contents of ruby program, > > > > > >require "win32/open3" > > > > > >input, out, err, @pid = Open4.popen4('dir') > > > > > > > > > > > >Help Appreciated! > > > > > >Thanks > > > > > >Jatinder > > > > > Same as win32-serivce.so, you can download "open3.so" at > > http://home.nownuri.net/~phasis/open3.so > > and copy to ruby\lib\ruby\site_ruby\1.8\i386-msvcrt\win32 directory > > > > Soon or later, the segfaulting binary files will be replaced with > correct > > version. > > > > Regards, > > > > Park Heesob > > > > > > > > > > ------=_Part_96439_3179936.1150173574557--