En/na Sergei Gorelkin ha escrit:
Marcos Douglas wrote:

Well, the problem was fixed.
Bug reporter: http://bugs.freepascal.org/view.php?id=16884
Solution: http://cia.vc/stats/project/fpc/.message/b8ef19

Unfortuately, not. Issue #16884 was a race condition which was causing the thread to start executing before it was completely initialized by its constructor. The current issue is a resource leak that happens when a TThread is created and then destroyed before executing any thread code.

I don't see the bug there: as soon as you call "inherited create(false)" you know that the thread can start executing, that's the point of creating it *not* suspended. If you want to be sure that the constructor has initialized everything, either call "inherited create(false)" as the last instruction of the constructor or use "inherited create(true)" and later call "resume".
Oh, well, maybe I'm just used to defensive programming.

Bye
--
Luca Olivetti
Wetron Automatización S.A. http://www.wetron.es/
Tel. +34 93 5883004 (Ext.133)  Fax +34 93 5883007

--
_______________________________________________
Lazarus mailing list
[email protected]
http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus

Reply via email to