`

Ruby 1.9概要(5) 异常

阅读更多

1、异常的相等性 ,如果两个异常的class、message和backtrace一样,那么认为这两个异常是相等的,可以通过==判断。

<!---->def  method
    
raise   ' foobar '
end

errors 
=  []
2 .times do
    Thread.new do
      begin
        method
      rescue 
=>  e
        errors 
<<  e
      end
    end.join
end
puts errors[
- 2 ==  errors[ - 1 ]     # => true (1.9)   false(1.8)


2、SystemStackError现在继承Exception类,而非原来的StandardError :
1.8 

<!---->SystemStackError  <  StandardError   #  => true

1.9

<!---->SystemStackError  <  StandardError  #  => nil
   SystemStackError  <  Exception       # => true


3、移除了Exception#to_str方法

<!---->begin
   
raise   " foo "
rescue
   $!.to_str
end

# => undefind method "to_str" for #<RuntimeError:foo>


分享到:
评论

相关推荐

    autoreload:自动库重新加载

    它也适用于 Ruby 1.9 或更高版本。 在 Ruby 1.8 或更旧的文件中,无论自上次加载后是否实际更改,都会重新加载文件。 而在 Ruby 1.9+ 中,它们仅在文件上的 mtime 比上一次更新时才重新加载。概要假设我们的加载...

    craigslist_monitor:用于观看 Craigslist 相关帖子的脚本,因此您不必

    Craigslist 监视器 用于观看 Craigslist 相关帖子的脚本,因此您不必这样做。... and install Ruby 1.9 if you need (RVM will tell you the command) $ gem install bundler $ bundle install 配置 根据您的喜好

    agora:面向目标的敏捷需求获取

    阿哥拉描述Agora(面向敏捷目标的需求获取)旨在通过围绕需求模型(尤其是目标模型)的获取提供敏捷工具来帮助KAOS采纳者... (不是ruby&gt; = 1.9解决此问题的方法,因为随后订购了哈希键,从而提供了一种简便的方法

    fluent-plugin-flatten

    Ruby &gt; = 0.1.0 &gt; = v0.14.8 &gt; = 2.1 &lt;0&gt; = v0.12.0 &gt; = 1.9 成分 展平输出 Fluentd插件可提取嵌套键路径的值,并将它们重新发送为平面标签/记录对。 概要 假设您有一个如下配置: @type flatten key foo ...

    DB2 Express-C快速如门

    - **Starter Toolkit for DB2 on Rails**:一套 Ruby on Rails 应用开发工具,旨在简化基于 DB2 的 Web 应用程序开发过程。 - **Web 2.0 Starter Toolkit for DB2**:提供了构建 Web 2.0 应用所需的工具和服务。 - *...

    db2数据库入门教程(官方中文版)

    1.9相关免费软件................................................................................................................17 1.9.1 IBM数据工作室(Data Studio)......................................

    db2数据库入门官方教程(中文版)

    1.9相关免费软件................................................................................................................17 1.9.1 IBM数据工作室(Data Studio)......................................

Global site tag (gtag.js) - Google Analytics