Threads

P

Phy Prabab

Hello,

So I am new to ruby and have a question about threads. Yes, I researched looking for an answer to my question without much luck. I am trying to create a bunch of threads that will run forever processing numerical information. I wrote a very simple example of what I thought would work:

threads = []

list = %w(aS, bS, cS, dS, eS, fS, gS, hS)

for space in list
threads << Thread.new(space) {|numericalSpace|
while 1
puts "#{thread.id}: #{numericalSpace}"
sleep 2
end
}
end

This does not work as I thought it would, that is it would spin off a bunch of threads and every two seconds I would get a thread print the simple line to the terminal.

So, what am I missing?

Thanks in advance!
Phy
 
R

Roger Pack

This does not work as I thought it would, that is it would spin off a
bunch of threads and every two seconds I would get a thread print the
simple line to the terminal.

So, what am I missing?

Try adding a Thread.abort_on_exception = true to the top.
Also note that if the "main" thread ever terminates then it kills all
other threads and ends the program
Cheers.
-=R
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,962
Messages
2,570,134
Members
46,690
Latest member
MacGyver

Latest Threads

Top