У меня есть следующие сценарии ruby rubyScript.rb:
require "rScript"
t1 = Thread.new{LongRunningOperation(); puts "doneLong"}
sleep 1
shortOperation()
puts "doneShort"
t1.join
rScript.rb:
def LongRunningOperation()
puts "In LongRunningOperation method"
for i in 0..100000
end
return 0
end
def shortOperation()
puts "IN shortOperation method"
return 0
end
ВЫХОД вышеописанного сценария, т. Е. (Ruby rubyScript.rb)
1) С использованием функции сна
In veryLongRunningOperation method
doneLong
IN shortOperation method
doneShort
2) Без использования функции сна, т. Е. Без функции сна. (Ruby rubyScript.rb)
In veryLongRunningOperation method
IN shortOperation method
doneShort
doneLong
почему существует разница ввыход.Что делает сон в последнем случае.Спасибо заранее.