hi, Thank you very much for all these inputs,
so as i understand it... each object when requires syncn gets a slot in the Sync block table, there are two ptrs- one from the object to the table and the other back to the object from the sync blk table and these pointers (back to the object) are treated as weak pointers and scanned accordingly by the GC sync blk memory is not collected but only the pointer to the obj in the entries are updated (since i am looking at the code with the GC perspective) Are these assumptions about the code correct? 1. the purpose of Gen0List is to reduce scanning time for gen 0 objects something like a cache? the objects of generations > 0 have to get scanned from the table entries 2. the entries in the sync blk table are deleted only when - there are no more operations wrt syncing being performed on an object - when the object itself has become garbage Regards. > See Jeffrey Richter's article on sync blocks for some more gen. > > http://msdn.microsoft.com/msdnmag/issues/03/01/NET/default.aspx > > > -----Original Message----- > > From: Discussion of the Rotor Shared Source CLI implementation > > [mailto:[EMAIL PROTECTED]] On Behalf Of Archana > > Sent: Monday, January 06, 2003 6:59 AM > > To: [EMAIL PROTECTED] > > Subject: [DOTNET-ROTOR] object synchronization > > > > Hi, > > Rotor documentation talks about syncblk routines as ones that provide > > runtime support wrt object synchronization, > > Does this mean sync-ing when many threads are trying to access the > > object at once ? At which level sync-ing is implied > > are there any other pointers that explain about sync blocks, why they > > are required etc.. in detail ? > > > > Regards