On Fri, 20 Jun 2003, Barry Bond wrote: > You shouldn't have problems if you add additional thread synchronization > code. The suspend/resume code is reasonably robust - it suspends each > thread, and if the thread is not executing managed code, it immediately > resumes it and lets the thread run until it re-enters managed code. okay.
> As > long as you don't introduce new locks that need to be acquired by the > actual suspend/resume code in the EE, you shouldn't see deadlocks. > by new locks do you mean locking the thread store? > Be very careful adding new locks into the PAL - if you do, you'll need > to update the critsec_count in order to avoid PAL-internal deadlocks. Can you please elaborate on this ? > > Barry > This posting is provided "AS IS" with no warranties, and confers no > rights. Regards archana > > -----Original Message----- > From: Discussion of the Rotor Shared Source CLI implementation > [mailto:[EMAIL PROTECTED] On Behalf Of Archana > Sent: Friday, June 20, 2003 4:45 AM > To: [EMAIL PROTECTED] > Subject: [DOTNET-ROTOR] Using posix calls in rotor code > > Hi, > Can we use Posix calls for thread synchronization in rotor code? > because > almost all calls used are the ones that are defined in /pal/unix > directory. and crucial functions such as suspendEE, restartEE assume > that > all the threads are objects of 'class Thread'. > to be more specific, if we introduce pthread mutexes/semaphores in the > code, what precautions should one take to ensure that the gc thread is > successful in suspending all the threads? > > Thanks & regards > archana >
