The gen0 collection copies everything over, so there is no need to clear
the bits on the original objects.

The only exception is if there are pinned objects in the gen0. The bits
are cleared in gc_heap::scavenge_pinned_objects in this case - look for
clear_marked_pinned.

-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 Albert Miranda
Sent: Wednesday, December 10, 2003 3:37 AM
To: [EMAIL PROTECTED]
Subject: [DOTNET-ROTOR] Clearing Marked/Pinned Bits

When an ephemeral collection is being performed, cross-generational
references are traced, and objects containing such references are marked
as
live. This is ok if a gen1 collection is performed after that, but if it
is
not, those bits should be cleared in order not to corrupt the
MethodTable
pointer. However, we haven't been able to find the code that clears
these
bits if only a gen0 collection is performed (if a gen1 collection is
performed, these ones are cleared in the sweep phase). We believe that
if
they're not cleared there may be problems in the execution of the
program.

Could anyone tell us where this clearing is performed, if it is
somewhere,
or are we wrong about that?

Thank you for your patience

Albert Miranda

RSVP

===================================
This list is hosted by DevelopMentor(r)  http://www.develop.com
NEW! ASP.NET courses you may be interested in:

2 Days of ASP.NET, 29 Sept 2003, in Redmond
http://www.develop.com/courses/2daspdotnet

Guerrilla ASP.NET, 13 Oct 2003, in Boston
http://www.develop.com/courses/gaspdotnet

View archives and manage your subscription(s) at
http://discuss.develop.com

===================================
This list is hosted by DevelopMentorŪ  http://www.develop.com
NEW! ASP.NET courses you may be interested in:

2 Days of ASP.NET, 29 Sept 2003, in Redmond
http://www.develop.com/courses/2daspdotnet

Guerrilla ASP.NET, 13 Oct 2003, in Boston
http://www.develop.com/courses/gaspdotnet

View archives and manage your subscription(s) at http://discuss.develop.com

Reply via email to