[#37248] [Feature:1.9] Enumerator#inspect — "Yusuke ENDOH" <mame@...>

遠藤です。

12 messages 2008/12/02

[#37337] [Feature #841] Object#self — "rubikitch ." <redmine@...>

Feature #841: Object#self

13 messages 2008/12/09

[#37513] Current status of 1.9.1 RC1's issues — "Yugui (Yuki Sonoda)" <yugui@...>

Hi, folks

14 messages 2008/12/20
[#37516] Re: Current status of 1.9.1 RC1's issues — Masatoshi SEKI <m_seki@...> 2008/12/20

咳といいます。

[#37576] [BUG:trunk] encoding for stdio's — "Yugui (Yuki Sonoda)" <yugui@...>

Yuguiです。

11 messages 2008/12/24

[ruby-dev:37448] [Bug: trunk] GC from blocking region

From: SASADA Koichi <ko1@...>
Date: 2008-12-15 13:44:31 UTC
List: ruby-dev #37448
 ささだです.

U.Nakamura wrote::
> こんにちは、なかむら(う)です。
> 
> In message "[ruby-dev:37381] Re: Ruby開発ミーティングログ"
>     on Dec.11,2008 13:44:58, <usa@garbagecollect.jp> wrote:
>>> - Bug #755 [ruby-core:19946]: Windows specific. うささんに聞く (akr)
>> 対応パッチを作ってこの問題が解決するところまではたどり着いて
>> るのですが、メモリ関連のバグを仕込んでいるらしく別のテストで
>> [BUG]るようになってしまったので困っているところです。
>> 誰かパッチのバグを探してくれる人がいるならそのパッチを出しま
>> すが...
> 
> これ、原因わかりました。
> 
> blocking region内でGCが発生すると、blocing regionじゃないスレ
> ッド(なんか名前ないかな)のスタックが一切markされないため、そ
> のスレッドでスタック上にあるVALUEが回収されてしまいます。
> 対策としては、
> 
>  (1) blocking regionからGCが起こされたときはblocking regionじゃ
>      ないスレッドを止めてそのスレッドのスタックをmarkしてGCを
>      続行させる。
>        → 無理がありそう
> 
>  (2) blocking regionからGCを起こさせない
> 
>    (a) xmalloc等は使用禁止とする
>          → 面倒なのではないか
> 
>    (b) blocking regionからxmalloc等が呼ばれたときはメモリ確保
>        できなくてもGCしない
> 
> といったあたりがIRCでは出ました。

(c) blocking_region の中で,さらに ruby な環境にさわれる状態になり(GVL
を取得する),メモリ確保を行う,ということが考えられます.性能はもちろん
落ちますが(使いどころを間違えると,とてもとても遅くなります),どーして
も必要な場合は使う,ってことが出来るかと思います.

-- 
// SASADA Koichi at atdot dot net

In This Thread