Ich möchte in der Lage sein, ein TDataSet asynchron in einem eigenen Thread zu öffnen, so dass der Haupt-VCL-Thread bis dahin fortgesetzt werden kann und anschließend der Haupt-VCL-Thread aus diesem TDataSet gelesen wird. Ich habe etwas experimentiert und bin in einige sehr seltsame Situationen geraten, also frage ich mich, ob jemand das schon einmal gemacht hat.In Delphi, ist TDataSet Thread sicher?
Ich habe einige Beispiel-Apps gesehen, wo ein TDataSet in einem separaten Thread erstellt wird, es geöffnet wird und dann Daten daraus gelesen werden, aber das ist alles in dem separaten Thread getan. Ich frage mich, ob es sicher ist, aus dem TDataSet aus dem VCL-Haupt-Thread zu lesen, nachdem der andere Thread die Datenquelle geöffnet hat.
Ich mache Win32-Programmierung in Delphi 7, mit TmySQLQuery von DAC for MySQL als mein TDataSet-Nachkomme.
Threading kann auf viel einfachere Weise durchgeführt werden: http://otl.17slon.com – gabr
Ich bemerkte aus den FAQ für die OmniThreadLibrary (Link in Kommentar oben), dass es nur Delphi 2007 und 2009 unterstützt. Hat jemand es auf verwendet D7? –