Я хотел бы иметь возможность открывать TDataSet асинхронно в своем собственном потоке, чтобы поток основного VCL мог продолжаться до тех пор, пока это не закончится, а затем последует чтение основного потока VCL из этого TDataSet. Я экспериментировал и попал в очень странные ситуации, поэтому мне интересно, сделал ли кто-нибудь это раньше.
Я видел несколько примеров приложений, в которых TDataSet создается в отдельном потоке, он открывается, а затем данные считываются из него, но все это делается в отдельном потоке. Мне интересно, безопасно ли читать TDataSet из основного потока VCL после того, как другой поток откроет источник данных.
Я делаю Win32-программирование в Delphi 7, используя TmySQLQuery из DAC для MySQL в качестве моего потомка TDataSet.