我在Ruby中的线程有问题。
这是我第一次使用线程,所以我可能忽略了一些重要的东西。
我有以下程序:
def define_action(field)
false if field.nil? || field.empty?
puts field.empty? <---- ONLY FOR DEBUG
case field['special']
when 'signpost'
typewriter_animation(field['message'])
else
typewriter_animation("TO DO ... add action for #{field['special']}")
end
end
typewriter_animation
我用
define_action
一线生机
@timer = Thread.new do
@engine.define_action(@map.next_field_coordinates)
end
field
是
empty
true
没有线程的相同代码可以完美地工作,但显然会在屏幕上停留5秒钟。
我的代码出了什么问题?