[M3devel] A RT failure in ThreadPThread.Alert]

Rodney M. Bates rodney.bates at wichita.edu
Sat Sep 22 04:51:36 CEST 2007


 From a bit of code reading, it looks like:

1) FileBrowserVBT.m3 has been routinely doing this for a long time
    (Alerting a thread that has most likely already terminated), and

2) ThreadPosix tolerates this harmlessly.

So, making ThreadPThread also tolerate it is probably the right fix.

Tony Hosking wrote:
> Hmmm.  Perhaps there is a deeper problem.
> 
> On Sep 21, 2007, at 3:35 PM, Rodney M. Bates wrote:
> 
>> The Alert is coming from somewhere inside Trestle.  I guess I need to
>> look into that.
>>
>> Tony Hosking wrote:
>>
>>> waitCond should be valid for all live threads.  I'm assuming you  
>>> are  invoking Thread.Alert on a thread that is no longer alive.   
>>> Indeed,  you can see from the debug output that the thread has  
>>> completed.  I  suppose we could silently ignore the alert for a  
>>> completed thread,  but I suspect this reveals some deeper problem  
>>> with your code --  should you really issue an alert to a thread  that 
>>> is incapable of  receiving it.  I wonder if the alert flag is  
>>> already set for that  thread.  In any case I suppose we can simply  
>>> check for NIL in Alert.   I've checked in code to do this.
>>
>>
>> -- 
>> -------------------------------------------------------------
>> Rodney M. Bates, retired assistant professor
>> Dept. of Computer Science, Wichita State University
>> Wichita, KS 67260-0083
>> 316-978-3922
>> rodney.bates at wichita.edu
> 
> 
> 

-- 
-------------------------------------------------------------
Rodney M. Bates, retired assistant professor
Dept. of Computer Science, Wichita State University
Wichita, KS 67260-0083
316-978-3922
rodney.bates at wichita.edu



More information about the M3devel mailing list