事情是这样的:

 times++
@ddr = DDR::DDR.new()

执行到这里的时候,总是报错:'+@' undefied method。刚开始的时候以为是机器在重启过程中一些不稳定函数调用或者参数混乱造成的。于是改成:

times++
sleep(60 * 5)
@ddr = DDR::DDR.new()

总算是这步的错不报了,跳过去了。可是发现 times 的值在执行了多次之后没有变化。

事情的原因是:Ruby不支持 ++ 自增操作符。

begin

rescue
#times++
times += 1
sleep( 60 * 5)
@ddr =
retry if times < 2
end

当 times++ 在rescue 上面的时候,代码为 syntax error,可是放到 rescue里面就不报错了,可以执行。应该是和ruby 的exceptiion机制有关。

自己挖了个大坑,block了一周的时间,收获如下:

1.在内心里有 “ruby不支持自增操作符”的印象,可是记忆不准确,也不确定。

2.解决问题的思路应该修改,把所有可能出错的原因列在纸上,一条条排除,不应该忽略简易的可能出错原因。

3.ruby学的太笼统了,很多原理不了解,加强基本知识的补充。受C++思想影响了。弄懂这不明白的点,阶段性整理。

最新文章

  1. 配置Eclipse编写HTML/JS/CSS/JSP页面的自动提示。
  2. Linux的95个小技巧
  3. 12 哈希表相关类——Live555源码阅读(一)基本组件类
  4. mysql查询缓存参数
  5. gcc和g++
  6. Marbles启动信息
  7. Atitit. C# java 的api 目录封装结构映射总结
  8. Android Studio 常用快捷键以及设置
  9. UVA 11294 Wedding(2-sat)
  10. mac 下安装安卓模拟器
  11. Qt之QCustomPlot绘图(一)配置和第一个例子
  12. @Transactional 注解说明
  13. 移动web:tab选项卡
  14. 线程同步synchronized
  15. Java 泛型 泛型数组
  16. Java集合--TreeSet详细解析
  17. 关于在Python3.6下安装MySQL-python,flask-sqlalchemy模块的问题
  18. ionic-content 中iframe高度自适应
  19. EF 更新实体 The instance of entity type &#39;BabyEvent&#39; cannot be tracked because another instance
  20. 【IT笔试面试题整理】判断一个二叉树是否是平衡的?

热门文章

  1. SAP HANA
  2. Thinkphp5 的常用连式查询
  3. Form和ModelForm组件
  4. Python9-网络编程2-day31
  5. 如何把list当成栈或者队列来用
  6. AOP面向切面编程笔记
  7. Setting title-center on &quot;&lt; h1&gt; &quot; element on Android does not work, fix
  8. [文章备份]Powershell Studio 2019 5.6.160 X64破解版 Crack
  9. 配置hibernate常见问题
  10. 提交AppStore被拒原因总结