为什么我的代码无限期挂起?

时间:2011-04-13 23:34:14

标签: ruby

我正在尝试运行以下使用Nokogiri的代码,但是当它遇到第161次迭代时它会卡住。 List是解析文件后创建的一组节点。

我不知道为什么会发生这种情况,是不是因为内存不足?还有什么我可以检查它是否无限期悬挂。

for i in 0...list.length
  puts i
  # puts list[i].inner_html
  while isReady(list[i])
    list[i].inner_html = "#{list[i+1].inner_html}"
    list[i+1].remove
  end
end

已解决问题 我刚刚意识到列表[i + 1] .remove没有删除,这就是为什么它在while循环中无限期挂起的原因。谢谢你的建议。

1 个答案:

答案 0 :(得分:1)

当i == list.length,并且调用list [i + 1] .remove()时会发生什么?看起来很麻烦。