我不是 Ruby 方面的专家,但我试图在某些脚本中跟踪问题,但无法联系到这个特定脚本的专家,以了解我们收到此错误的原因。我已经将事情缩小到这个特定的功能,据我所知,第一个 print 语句发生但 end print 语句没有。堆栈级别太深错误仅在此函数完全存在时发生,如下所示:
def load_power_ports(io_info)
return if !io_info
io_info.each_key do |key|
print key
if !@power_controllers[key.to_s.downcase]
@power_controllers[key.to_s.downcase] = Object.const_get($equipment_table['power_controller'][key.to_s.downcase][0].driver_class_name).new($equipment_table['power_controller'][key.to_s.downcase][0])
end
end
print "end of equipment power block"
rescue Exception => e
raise e.to_s + "\nUnable to create power controller: " + io_info.to_s
end
打印语句仅用于查看正在传递哪些信息、程序正在执行多远以及正在执行的迭代。