青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

qinzuoyan

  C++博客 :: 首頁 :: 聯系 :: 聚合  :: 管理
  8 Posts :: 0 Stories :: 16 Comments :: 0 Trackbacks

常用鏈接

留言簿(3)

我參與的團隊

搜索

  •  

最新評論

閱讀排行榜

評論排行榜

最近因為使用Ruby寫一個多線程爬蟲,所以積累了一點小心得:

1、多使用Benchmark測試效率,以尋找高效的實現,尤其是對于頻繁執行的代碼。Ruby執行的效率本身比較慢,所以代碼選擇很重要。
 1 require 'benchmark'
 2 
 3 = 100000
 4 Benchmark.bm { |x|
 5   x.report("gsub") { 
 6     for i in 1..n
 7       a = "abcd\nef" * 10
 8       b = a.gsub(/\n/," ")
 9     end 
10   }
11   x.report("  tr") {
12     for i in 1..n
13       a = "a\"bcd\nef" * 10
14       b = a.tr("\n"," ")
15     end  
16   }
17 }

上面執行結果:
      user     system      total        real
gsub  2.312000   0.109000   2.421000 (  2.438000)
  tr  0.656000   0.000000   0.656000 (  0.672000)
兩者效率相差近四倍。

2、關于字符串連接,盡量使用"<<",而不是"+=",因為兩者效率相差巨大。
 1 require 'benchmark'
 2 
 3 Benchmark.bm { |b|
 4   b.report("+= ") {
 5     a = ""
 6     100000.times { a += "foo" }
 7   }
 8   b.report("<< ") {
 9     a = ""
10     100000.times { a << "foo" }
11   }
12 }

執行結果:
      user     system      total        real
+=  22.390000   9.750000  32.140000 ( 35.671000)
<<   0.094000   0.000000   0.094000 (  0.094000)

3、注意Ruby的異常類層次:
Exception
    
* fatal
    
* NoMemoryError
    
* ScriptError
          o LoadError
          o NotImplementedError
          o SyntaxError
    
* SignalException
          o Interrupt
    
* StandardError
          o ArgumentError
          o IOError
                
+ EOFError
          o IndexError
          o LocalJumpError
          o NameError
                
+ NoMethodError
          o RangeError
                
+ FloatDomainError
          o RegexpError
          o RuntimeError
          o SecurityError
          o SystemCallError
          o ThreadError
          o TypeError
          o ZeroDivisionError
    
* SystemExit
    
* SystemStackError
使用 rescue 捕捉異常時,如果沒有指定捕捉的異常類型,則默認為StandardError。(If you write a rescue clause with no parameter list, the parameter defaults to StandardError.——參見Programming Ruby
這點需要特別注意,因為我們往往習慣性假設它會捕捉所有異常。譬如Net::HTTP獲取頁面如果超時會拋出Timeout::Error異常,其為Interrupt的子類,所以不能被無參的 rescue 捕獲。我就在這上面栽過跟頭。

4、這里有一些非常好的參考資料:
  Ruby-Doc.org —— Ruby文檔的權威網站
  Programming Ruby —— Ruby權威的文檔
  Ruby Class and Library Reference —— 很方便的常見類的參考
  Ruby QuickRef —— 快速索引,查各種符號和用法很方便
  Ruby User's Guide —— Ruby各方面精簡介紹,入門不錯
  PLEAC Ruby —— Ruby的Cookbook
  Ruby Example Code —— 簡單直觀的樣例代碼,Ruby的HelloWorld
  Ruby Essentials
 
posted on 2009-08-11 00:09 左言 閱讀(375) 評論(0)  編輯 收藏 引用
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲欧洲日本一区二区三区| 91久久精品国产91久久性色| 欧美日韩在线观看视频| 亚洲宅男天堂在线观看无病毒| 日韩一级片网址| 欧美日韩综合一区| 免费不卡在线视频| 久久久久成人网| 欧美亚洲自偷自偷| 亚洲特级毛片| 在线亚洲欧美视频| 亚洲精品日韩一| 久久久久国产一区二区三区四区| 一区二区国产精品| 亚洲欧洲精品一区二区| 国产免费成人| 国产日韩在线播放| 国产欧美日本| 国产一区二区三区直播精品电影| 国产欧美一区二区在线观看| 国产精品国产三级国产专区53| 欧美日韩一区二区视频在线| 欧美日韩岛国| 欧美亚州在线观看| 国产精品久久久久久久第一福利| 国产精品久久久久免费a∨大胸| 国产精品jvid在线观看蜜臀| 国产精品视频一区二区高潮| 国产亚洲综合在线| 在线观看亚洲a| 亚洲日本免费| 亚洲欧美国产高清va在线播| 久久国产精品99精品国产| 欧美在线亚洲| 欧美中文字幕久久| 久久免费视频在线观看| 欧美激情按摩| 一本色道久久| 久久er99精品| 欧美a级一区二区| 欧美日韩国产不卡在线看| 亚洲国产欧美一区| 亚洲国产精品小视频| 一区二区三区回区在观看免费视频| 久久成人精品一区二区三区| 国产精品v欧美精品v日韩| 亚洲国产一区二区在线| 欧美一区日本一区韩国一区| 一本久道久久久| 欧美片在线播放| 亚洲免费精品| 亚洲国产精品悠悠久久琪琪| 久久精品99国产精品酒店日本| 国产精品久久久久久久久久久久| 日韩天堂在线视频| 亚洲国产日韩在线一区模特| 你懂的视频一区二区| 亚洲高清av在线| 欧美黑人多人双交| 免费亚洲电影在线| 亚洲国产一区二区三区a毛片| 久久精品国产成人| 欧美中文在线字幕| 狠狠色伊人亚洲综合网站色| 久久手机免费观看| 久久久精品国产99久久精品芒果| 韩国三级在线一区| 另类图片国产| 男人天堂欧美日韩| 亚洲精品小视频在线观看| 亚洲国产精品久久久久婷婷884| 久久久久久伊人| 亚洲国产三级| 亚洲人成网站777色婷婷| 欧美日韩成人综合| 午夜精彩视频在线观看不卡 | 午夜精品免费| 午夜久久久久| 极品少妇一区二区三区| 欧美国产先锋| 欧美日韩蜜桃| 欧美一区视频| 久久天堂av综合合色| 亚洲精品国精品久久99热| 亚洲精品国产精品国自产在线 | 国产日韩欧美在线视频观看| 欧美伊人久久大香线蕉综合69| 欧美一区二区三区的| 怡红院精品视频| 亚洲三级免费| 国产三级精品在线不卡| 欧美成熟视频| 欧美私人啪啪vps| 久久精品九九| 免费欧美日韩| 欧美一区二区三区在| 久久香蕉精品| 亚洲小少妇裸体bbw| 久久成人综合视频| 国产亚洲一区二区精品| 欧美+日本+国产+在线a∨观看| 欧美激情综合五月色丁香| 亚洲欧美日韩国产另类专区| 欧美在线视频免费| 一区二区三区四区精品| 久久久久久久激情视频| 亚洲主播在线播放| 另类春色校园亚洲| 久久国产精品72免费观看| 欧美成人情趣视频| 久久久久免费观看| 国产精品v欧美精品v日本精品动漫| 久久婷婷久久一区二区三区| 欧美午夜剧场| 欧美高清视频| 国产一区二区三区久久悠悠色av | 黄色亚洲网站| 一区二区三区**美女毛片| 亚洲国产网站| 欧美一区二视频| 亚洲欧美日韩国产一区| 欧美经典一区二区| 欧美顶级大胆免费视频| 国模精品娜娜一二三区| 亚洲视频在线视频| 在线亚洲+欧美+日本专区| 久久综合婷婷| 久久夜色精品亚洲噜噜国产mv | 一本久道久久综合狠狠爱| 亚洲第一精品夜夜躁人人爽| 久久国内精品自在自线400部| 性色av一区二区三区在线观看 | 欧美专区日韩视频| 国产精品色午夜在线观看| 夜夜嗨av色一区二区不卡| 一本色道久久综合狠狠躁篇的优点| 免费看成人av| 亚洲国产精品va在线观看黑人| 亚洲国产va精品久久久不卡综合| 香蕉久久夜色| 久久久97精品| 国产综合自拍| 久久久久国内| 欧美mv日韩mv国产网站app| 一区二区在线观看av| 久久久久久一区| 欧美激情一区二区三级高清视频 | 欧美一区二区三区免费观看| 国产精品亚洲а∨天堂免在线| 亚洲小说欧美另类婷婷| 欧美在线影院| 黑人操亚洲美女惩罚| 久久久精品日韩| 免费在线看一区| 亚洲精品欧美精品| 欧美视频在线视频| 久久综合导航| 1024国产精品| 欧美大片免费观看在线观看网站推荐| 欧美成人三级在线| 一区二区欧美在线观看| 国产精品日本一区二区| 欧美在线一二三| 男人的天堂成人在线| 亚洲三级网站| 欧美新色视频| 久久精品综合一区| 亚洲精品国产精品久久清纯直播 | 麻豆精品精华液| 亚洲精品美女免费| 国产伦理一区| 男人的天堂亚洲| 亚洲视频一区二区| 欧美高清自拍一区| 亚洲欧美日韩精品一区二区| 在线观看国产欧美| 国产精品免费观看在线| 免费欧美网站| 午夜精品一区二区三区在线视| 亚洲国产婷婷香蕉久久久久久| 午夜久久久久久| 亚洲精品免费在线| 国产亚洲欧美一区在线观看| 欧美精品日韩一本| 久久噜噜噜精品国产亚洲综合| 99精品视频免费观看视频| 噜噜噜躁狠狠躁狠狠精品视频| 亚洲在线观看免费视频| 91久久亚洲| 国产在线不卡精品| 国产精品对白刺激久久久| 男女激情久久| 久久久www成人免费无遮挡大片| 宅男66日本亚洲欧美视频| 欧美成人一区在线| 久久久精品国产免费观看同学| 亚洲线精品一区二区三区八戒| 91久久精品国产91性色| 精品1区2区| 国产日韩欧美在线视频观看|