zoukankan      html  css  js  c++  java
  • ruby中的retry和redo

    # retry用于处理异常中的begin/end代码块中,如果发生异常会重新运行 begin 和 rescue 之间的代码
    #当retry 被调用的话,begin 和 rescue 之间所有的代码都会被重新跑一次,并不会只跑片段代码或只跑发生异常的代码
    (0..5).each do |i|
    begin
    puts i
    raise 'error' if i ==2
    rescue
    puts "error i=100"
    i=100
    retry
    end
    end

    # output result

    0
    1
    2
    error i=100
    100 # 这里打印捕获语句里的,赋值100的i
    3 # 这里打印传递进来的i
    4
    5



    # redo 迭代器(each)或for循环,条件满足,则以当前的条件重复一次{ block}的动作,不检查循环条件
    #下面代码重复打印Value: 3
    (0..5).each do |i|
    puts "Value: #{i}"
    redo if i > 2
    end
  • 相关阅读:
    redis -- RDB
    redis--数据库
    redis-慢查询日志
    redis 订阅与发布
    redis 事务
    redis 事件
    redis--服务器与客户端
    readis 内部数据结构
    Redis数据类型
    Docker 限制容器资源
  • 原文地址:https://www.cnblogs.com/or2-/p/6322557.html
Copyright © 2011-2022 走看看