Hi,
 Thank you for this information, but what i wanted to know is-
suppose a method has a fixed block meant to pin an object say X,
does X stay pinned throughout the lifetime of the method or does
it cease to become pinned right after the fixed block is executed?
a sample dis-assembled program seemed to indicate that, the fixed
objects were prefixed with 'pinned' at the beginning of the method
declaration.
so does that mean X ceases to be pinned only after it goes out of scope?

regards

On Fri, 6 Jun 2003, Jan Kotas wrote:

> The pinning bit is used only within the GC when everything else is
> stopped. It should be never set on a live object when the managed code
> is running. The bit is set in the scan phase and reset in the copy phase
> (in scavenge). Look for clear_marked_pinned in gcsmp.cpp.
>
> -Jan
>
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
>
> -----Original Message-----
> From: Discussion of the Rotor Shared Source CLI implementation
> [mailto:[EMAIL PROTECTED] On Behalf Of Archana
> Sent: Friday, June 06, 2003 6:00 AM
> To: [EMAIL PROTECTED]
> Subject: [DOTNET-ROTOR] scope of pinned variables
>
> Hi,
>  this is wrt implementation of status updation of an object.
> when is the pin-bit of an object reset?. ie. when does the GC get the
> information that, okay now this particular object X is no longer pinned.
> the GC appears to recognize pinning/set the pin bit thru pinObject in
> Promote.
>
> Thanks,
> archana
>

Reply via email to