[M3devel] Juno/Win32 possibly somewhat understood
    Jay K 
    jay.krell at cornell.edu
       
    Tue Sep 29 10:13:51 CEST 2009
    
    
  
So..in order to simplify debugging, I started removing and simplifying code, as long as the failures were similar.
Sometimes I'd get an array overflow as a result -- like if I removed code that initialized stuff.
 
I focused on:
 removing maybe unnecessary threads -- like the FileBrowserVBT.Watcher, the font cleanupt thread 
 I changed uses of Wait(Fork(NEW(T)) to just NEW(T).apply()
 I did also remove a bunch of Trestle redraw code that was often on the stack.
 
Eventually, while almost nothing got drawn, Juno seemed to crash less often and more consistently.
 
So I undid/redid stuff. It seems the main thing I had altered was using fewer threads.
 
So, a quick look at ThreadWin32.m3. It maintains some idle threads.
 
If I remove that, Juno seems to stop crashing.
 
I'm going to double check stuff.
Like undo all my other changes.
Maybe even try setting the idle thread count to 0 instead of removing the code.
See if my findings repeat themselves.
 
 - Jay
 		 	   		  
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://m3lists.elegosoft.com/pipermail/m3devel/attachments/20090929/55542424/attachment-0001.html>
    
    
More information about the M3devel
mailing list