Hello Folks, i'm a newbie who desires to implement a basic command
interpreter written in ruby. Let's say i want to start a new Thread who
listen to user input
p=Thread.new{
puts "thread started"
loop do
a=gets.chomp
exit if (a=="quit\n")
puts a
end
}
outputs "thread started" and exits
What i'm i doing wrong? Why the tread doesn't continue looping but exits?
Sorry for the newbie question, i'm just learning ruby.
Thank you very much for answering
Andrea
The p thread is started but the main execution thread (which spawned
the p thread) exits the interpreter. You need to add a 'p.join' at the
end which will wait for p to finish before continuing.
Farrel
···
On 29/01/07, Andrea Maschio <andrea.maschio@gmail.com> wrote:
Hello Folks, i'm a newbie who desires to implement a basic command
interpreter written in ruby. Let's say i want to start a new Thread who
listen to user input
p=Thread.new{
puts "thread started"
loop do
a=gets.chomp
exit if (a=="quit\n")
puts a
end
}
outputs "thread started" and exits
What i'm i doing wrong? Why the tread doesn't continue looping but exits?
Sorry for the newbie question, i'm just learning ruby.
Thank you very much for answering
Andrea