From: Yusuke ENDOH Date: 2008-01-28T21:04:12+09:00 Subject: [ruby-dev:33471] Re: Bignum#* might invoke GC parallelly? 遠藤です。 08/01/28 に Tanaka Akira さんは書きました: > In article , > "Yusuke ENDOH" writes: > > > rb_big_mul や divrem は rb_thread_blocking_region の中で実行されますが、 > > その中でオブジェクトを生成するため、GC が GVL をロックしない状態で発生 > > する (下手をすると GC が並列に動作する) 可能性があるような気がしました。 > > > > 他人事のように言ってますが、rb_thread_blocking_region で実行するように > > 提案してパッチを書いたのは私です ([ruby-dev:32632]) 。ごめんなさい。 > > > > 危なそうな例でも落ちたことはないので実は問題ないのかもしれません。でも > > 少し怖いので、オブジェクトの生成を rb_thread_blocking_region の外で行う > > パッチを書いてみました。ご検討ください。 > > 今日、以下のように rb_thread_blocking_region 中に GC が発生 > したときに SEGV が起こるのに出会ったんですが、この問題ってど > ういう話になったんでしたっけ? すっかり忘れてました。ごめんなさい。 パッチをあててもいいでしょうか。> 誰か -- Yusuke ENDOH