Hi Barry,

   I'm tinkering and trying to replace the Rotor GC.
I am currently using GcScanRoots and GcScanHandles 
with my own callback function (not GCHeap::Promote)
for my root set enumeration but I don't think this is
including the string roots from the LargeHeapHandleTable.
Any suggestions?

Todd

> -----Original Message-----
> From: Discussion of the Rotor Shared Source CLI implementation
> [mailto:[EMAIL PROTECTED] Behalf Of Barry Bond
> Sent: Tuesday, December 30, 2003 12:06 PM
> To: [EMAIL PROTECTED]
> Subject: Re: [DOTNET-ROTOR] Rotor root set enumeration question.
> 
> 
> clr/src/vm/appdomain.cpp pre-allocates some exceptions in
> SystemDomain::CreatePreallocatedExceptions() by calling CreateHandle()
> then StoreObjectInHandle().  They boil down into calls to
> clr/src/vm/objecthandle.cpp.  The GC calls objecthandle.cpp's
> Ref_TraceNormalRoots() from within CNameSpace::GcScanHandles() in
> gcscan.cpp, to enumerate these objects.
> 
> For strings, clr/src/vm/appdomain.cpp's SystemDomain::Init() 
> constructs
> a thing called the GlobalStringLiteralMap.  See
> clr/src/vm/stringliteralmap.cpp for its implementation details.  It
> looks like the m_LargeHeapHandleTable is implemented in appdomain.cpp.
> 
> This posting is provided "AS IS" with no warranties, and confers no
> rights.
> Barry 
> 
> -----Original Message-----
> From: Discussion of the Rotor Shared Source CLI implementation
> [mailto:[EMAIL PROTECTED] On Behalf Of 
> Anderson, Todd A
> Sent: Tuesday, December 30, 2003 10:48 AM
> To: [EMAIL PROTECTED]
> Subject: [DOTNET-ROTOR] Rotor root set enumeration question.
> 
> Does anybody know how Rotor enumerates the roots for
> things like preallocated exceptions and especially for
> string literals?  String literals seem to be allocated
> through the GC memory allocation routines but I don't
> see where/how those roots are enumerated at collection
> time.
> 
> thanks,
> 
> Todd
> 
> ===================================
> 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

===================================
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