[fpc-devel] Suspicion about TThread.Synchronize

J. Gareth Moreton gareth at moreton-family.com
Fri Feb 15 12:27:16 CET 2019

 I dare say, I would consider elevating this, especially as it's a feature
being used by an end user and is pretty serious if a multi-threaded program
can sometimes freeze due to a race hazard.

 Unfortunately, I don't use threads enough to know for sure how the
underlying classes work, otherwise I'd take it on myself.

 Gareth aka. Kit

 On Fri 15/02/19 11:52 , "Luca Olivetti" luca at ventoso.org sent:
 El 6/2/19 a les 18:51, Sven Barth via fpc-devel ha escrit: 

 > Would you nevertheless try with 3.2, please? Just in case it happens to 
 > be the problem I had fixed in regards to Queue(). 
 With fpc from the fixes_3_2 branch, revision 41310, and lazarus from the 
 fixes_2_0 branch revision 60414 it has been running for hours with no

 Mind me, that's not an absolute guarantee that it's working: I had the 
 same program compiled with fpc 3.0.4/lazarus 1.8.4 running all night 
 without triggering the issue, then I tried to introduce some randomness 
 in the companion test program (that simulates an hardware I/O module I 
 use in the field) and I could trigger it in a few minutes. 

 However, even if it's really fixed, I'm still worried: the changes in 
 the threading code should only be relevant for Queue, not for Synchronize.

 I hope it's not just luck and there are fixes in other areas of the 
 compiler/rtl/lazarus that are affecting the outcome. 

 fpc-devel maillist - fpc-devel at lists.freepascal.org 


[1] http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-devel/attachments/20190215/1b59eb31/attachment.html>

More information about the fpc-devel mailing list