[lnkForumImage]
TotalShareware - Download Free Software

Confronta i prezzi di migliaia di prodotti.
Asp Forum
 Home | Login | Register | Search 


 

Forums >

comp.lang.ruby

some threads are not starting

Junkone

1/3/2008 8:00:00 PM

I have this code to start 4 prog in 4 separate threads. however 2 of
the ibScans and
emailProcessing threads are not even starting. dunno why.

ibScans and emailProcessing are not even starting and i dont see the
puts hitting it at all.
#require 'sendmail'
require 'twsFunctions'
require 'sendGmail'



def startIB
@ibThread=Thread.new do
system("start E:\\TradingTools\\IBController\IBControllerStart_customised.bat")

end
@ibThread.join

puts "ib started #{ @ibThread.status}"
end


def ibScans
@ibScansThread=Thread.new do
load 'twsScans.rb'
end
@ibScansThread.join
puts "ib scans started #{ @ibScansThread.status}"

end
def abScans
@abScansThread =Thread.new do
load "ABScans.rb"
end
@abScansThread.join
puts "ab scans started #{ @abScansThread.status}"
end
def emailProcessing
@emailThread=Thread.new do
while true

load 'ScansNotifier.rb'
sleep(30)
end

end

end

startIB
abScans
ibScans
emailProcessing





2 Answers

ara.t.howard

1/3/2008 9:38:00 PM

0


On Jan 3, 2008, at 1:05 PM, Junkone wrote:

> emailProcessing threads are not even starting. dunno why.

unless you have a *very* good reason not too always put

Thread.current.abort_on_exception

at the top of every Thread.new block

if you don't see an exception getting raise then one of two things is
happening:

- the threads are blocked somehow
- you have blocked on the threads

i notice you are joining the thread in startIB - do you realize this
is *exactly* like not using a thread at all? why are you joining
that thread?

unless "start E:\\TradingTools\IBController
\IBControllerStart_customised.bat" exits instantly you are
instructing your program to wait until it finished before continuing.

regards.

a @ http://codeforp...
--
we can deny everything, except that we have the possibility of being
better. simply reflect on that.
h.h. the 14th dalai lama




Junkone

1/3/2008 10:26:00 PM

0

On Jan 3, 4:37 pm, "ara.t.howard" <ara.t.how...@gmail.com> wrote:
> On Jan 3, 2008, at 1:05 PM, Junkone wrote:
>
> > emailProcessing threads are not even starting. dunno why.
>
> unless you have a *very* good reason not too always put
>
>    Thread.current.abort_on_exception
>
> at the top of every Thread.new block
>
> if you don't see an exception getting raise then one of two things is  
> happening:
>
> - the threads are blocked somehow
> - you have blocked on the threads
>
> i notice you are joining the thread in startIB - do you realize this  
> is *exactly* like not using a thread at all?  why are you joining  
> that thread?
>
> unless "start E:\\TradingTools\IBController
> \IBControllerStart_customised.bat" exits instantly you are  
> instructing your program to wait until it finished before continuing.
>
> regards.
>
> a @http://codeforp...
> --
> we can deny everything, except that we have the possibility of being  
> better. simply reflect on that.
> h.h. the 14th dalai lama

you mean like
@abScansThread =Thread.new do
Thread.current.abort_on_exception

load "ABScans.rb"
end


or like this

Thread.current.abort_on_exception
@abScansThread =Thread.new do
load "ABScans.rb"
end