From: Praveen Ray Date: 2007-12-21T00:45:51+09:00 Subject: Re: starting multiple processes Maynot help you much but in Perl world I used IPC::Run module to do exactly this. Not sure if there is a similar module in RubyLand.

Gordon Thiesfeld wrote:
On Dec 20, 2007 2:34 AM, Robert Klemme <shortcutter@googlemail.com> wrote:
  
2007/12/20, Joel VanderWerf <vjoel@path.berkeley.edu>:
    
Junkone wrote:
      
hello
i have to do the following
1.     exec("E:\\TradingTools\\IBController\
\IBControllerStart_customised.bat")
 2.     application = WIN32OLE.new("Broker.Application")

I want to start 1 and then continue doing 2. however when i run it
realtime, the statement 2 waits for statement 1 to be completed which
takes long time. how do i initiate 1 and then withotu waiting goto
statement 2.
        
Wrap #1 in a thread:

Thread.new do
   exec(...)
end
      
Wouldn't help.  This is #exec and not #system - the process does not
wait, it is completely replaced and "application =
WIN32OLE.new("Broker.Application")" is never executed.

You rather want fork.

fork do
  exec ...
end

Cheers

robert

--
use.inject do |as, often| as.you_can - without end

    


Fork isn't implemented on Windows.  Try this:

system("start E:\\TradingTools\\IBController\\IBControllerStart_customised.bat")
application = WIN32OLE.new("Broker.Application")

-Gordon