注意: このページは最後に更新されてから
3459 日が経過している記事です。
文章が腐敗している可能性があります。その点を考慮した上で確認ください。
Library:retry-handlerについて
提供: kimoto's wiki
俺の作ったretry-handlerの使い方についての説明
概要
例外があった時に指定回数自動でリトライしてくれるライブラリです。
インストール
gem install lurker-retry-handler
使い方
require 'rubygems' #必要に応じて require 'retry-handler' Proc.new{ puts "hoge!" raise "anything error" }.retry(:accept_exception => StandardError)
これらの実行例
$ ruby test.rb hoge! hoge! hoge! hoge! /home/kimoto29/local/lib/ruby/gems/1.9.1/gems/lurker-retry-handler-0.0.1/lib/retry-handler.rb:37:in `rescue in _retry_handler': RetryOverError from /home/kimoto29/local/lib/ruby/gems/1.9.1/gems/lurker-retry-handler-0.0.1/lib/retry-handler.rb:30:in `_retry_handler' from /home/kimoto29/local/lib/ruby/gems/1.9.1/gems/lurker-retry-handler-0.0.1/lib/retry-handler.rb:19:in `retry_handler' from /home/kimoto29/local/lib/ruby/gems/1.9.1/gems/lurker-retry-handler-0.0.1/lib/retry-handler.rb:51:in `retry' from test.rb:3:in `<main>'
詳細はソース見たほうが早いです https://github.com/kimoto/retry-handler/blob/master/lib/retry-handler.rb
追加されるメソッド
- Proc#retry(options={})
- Proc内にて例外が発生した場合、指定回数リトライさせることが出来ます。
- Kernel#retry-handler(options={}, &block)
- 指定されたブロック内にて例外が発生した場合、指定回数自動リトライさせることができます。