[fpc-pascal] DB Access and Multithread

Michael Schnell mschnell at lumino.de
Mon Feb 2 09:05:07 CET 2015


On 01/30/2015 10:56 PM, Fabrício Srdic wrote:
> Hello,
>
> The DB access framework of the fpc is not thread safe.

IMHO you should never use the therm thread save in such a 
generalization. You need do be a lot more specific.

I never took a look at "The DB access framework of the fpc", so I can't 
comment on this but e.g. TList obviously is not thread save (that is why 
we have TThreadList), but anyway it's no problem to instantiate a TList 
object and use that exclusively from a single Thread, and then 
instantiate another TList object and use that exclusively from a 
different single Thread. Hence you could say "TList is thread save but 
it's instantiations are not". Maybe it's similar with "the DB framework".

AFAIK, Indy is thread save (of course provided the user adheres to a lot 
of necessary precautions that might not be explicitly documented).

I do know that a friend of mine used Delphi and Indy with a heavily 
multithreaded project.

-Michael



More information about the fpc-pascal mailing list