>
> the VCL is not threadsafe. You're supposed to access it only in
non-threading mode (IE. accessing using synchronize() from within the
thread). With multiple threads accessing the VCL is even more complicated..
using mutex's or something. Have you done all that?
>
> Dave
>
I'm aware that the VCL is not threadsafe, but does that include the memory
manager? All the threads (all 2 of them) use Synchronise to do most of the
processing. Something along the lines of :
procedure Thread.Execute;
begin
{ other code - including string manipulations, but definitely no
references to VCL stuff as far as I'm aware }
if need_to_do_action then
Synchronize(do_the_action);
{ other code }
end;
I may be using TString:List references in the thread - I'll go and check
that, but definitely not any visual component stuff - I wonder if that could
be getting me into trouble? Hmmm, yes I was referencing a TStringList
entity, and getting rid of it seems to have reduced the frequency of
occurence of the problem! So I'll keep looking for other things that may be
related.
Thank-you for your help.
Carl.
-----------------------------------------------------
Home page: http://groups.yahoo.com/group/delphi-en/
To unsubscribe: [EMAIL PROTECTED]
Yahoo! Groups Links
<*> To visit your group on the web, go to:
http://groups.yahoo.com/group/delphi-en/
<*> To unsubscribe from this group, send an email to:
[EMAIL PROTECTED]
<*> Your use of Yahoo! Groups is subject to:
http://docs.yahoo.com/info/terms/