[ruby-list:45488] _Re:_volatileの付け方

From: 谷垣 宏一 <co01@...>
Date: 2008-09-11 12:32:01 UTC
List: ruby-list #45488
谷垣です。 

>> ことを知ったのですが、配列にVALUEを 
>> 格納する場合、次のどちらが良いのでしょうか? 
>> 
>>   volatile VALUE *p_foo; 
>>   VALUE *volatile p_foo; 
>
>どちらも配列ではなくポインタです。

ポインタに対して、

  p_foo = (VALUE *)ALLOC_N(VALUE, len);

  p_foo[0] = rb_class_new_instance(...);
  p_foo[1] = rb_class_new_instance(...);

とするとき、ポインタ p_foo 自体を volatile にして
おけば格納したオブジェクトは GC で回収されないと
考えてよいのでしょうか?





In This Thread