Tanaka Akira さんは書きました: > それなら retry を使わなくてもブロックの中で big を参照すれば > いいのではありませんか? > ああそのとうりですね、例になってない。それじゃあ事前に(変数名がbigだと決 まるよりも前に)procオブジェクトを 作成して、それを用いたい状況だったらどうですか? it = proc{|n| p n } big = 0 Thread.new{loop{sleep 0.7;big += 1}} def foo(n) sleep(1) yield n retry end foo(big,&it) クラス化してインスタンス変数を使ったり、proc作成前にbig=0をはさんだりす ればいけますが、 そういうのをしたくない状況ってことで:-) ruby 1.8.6 (2007-07-28 patchlevel 5000) [i386-mswin32_80]