山本です。 >>|確保した順番に関係なく、オブジェクトIDの小さいほうから free 関数を >>|呼んでいるように見えます。つまり >>| >>| A(0x03) -> B(0x02) -> C(0x04) >>| >>|のように参照されていると、B が解放されて A の free 関数が解放済みの B >>|にアクセスしてしまうと。 >> >>そういうことです。で、それは仕様だと思ってます。 > >ううむ、仕様ですか。 すみません、過去ログですでに議論されてました(汗)[ruby-dev:11915] >解放関数では Ruby オブジェクトを操作できない、ということでしょうか。 >それならそれで明快な気もします。(zlib はバッファに RString を >使っているので、C のヒープを使うべきなんでしょうか) Rubyオブジェクトの io に触らないといけないので、それじゃだめですね。