P
Pie Squared
I've read this article: http://fixnum.org/ruby_c.html
It explains how to write a ruby extension in C, and explains how to
make the GC work with the new types you've defined.
However, it leaves me with one question:
What happens if you create a new object inside the C code, and this
triggers a garbage collection?
When you create new objects in the C code, are they automatically
added to the 'current' scope, so that the GC sees them? If so, then
how does it know when to remove them from the scope, and if not, then
what would happen if a GC cycle was triggered during C code execution?
Thanks
PieSquared
It explains how to write a ruby extension in C, and explains how to
make the GC work with the new types you've defined.
However, it leaves me with one question:
What happens if you create a new object inside the C code, and this
triggers a garbage collection?
When you create new objects in the C code, are they automatically
added to the 'current' scope, so that the GC sees them? If so, then
how does it know when to remove them from the scope, and if not, then
what would happen if a GC cycle was triggered during C code execution?
Thanks
PieSquared