The following comment in clr\src\vm\appdomain.cpp has the explanation: // Retrieve the pointer to the data inside the array. This is legal since the array // is located in the large object heap and is guaranteed not to move. m_pArrayDataPtr = (OBJECTREF *)HandleArrayObj->GetDataPtr();
-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 Anderson, Todd A Sent: Tuesday, February 17, 2004 9:03 AM To: [EMAIL PROTECTED] Subject: [DOTNET-ROTOR] LargeHeapHandleBucket root enumeration question While Rotor scans the LargeHeapHandleBucket structure, it evidently identifies a root from the m_hndHandleArray field. However, the m_pArrayDataPtr field in the same LargeHeapHandleBucket object looks to be an interior pointer to the start of the data of the object pointed to by the root just identified. However, this interior pointer root is not identified by CNameSpace::GcScanHandles() as far as I can tell. Is m_pArrayDataPtr supposed to be identified as an interior pointer root? Are the objects pointed to by the handle table implicitly pinned? If the interior pointer root is not identified then how is it updated if the array is moved? 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