Does Ado async fetching also good for processing as well?



I'm retrieving an ado recordset in an async way (adAsyncExecute +
adAsyncFetch + adAsyncFetchNonBlocking specified in recordset.open). I'm
using visual c++.

What I do is, when I receive a FetchProgress, then I send a message to my
thread pool, where one available thread process the given chunk of the ado
recordset (based on FetchProgress data).

However what I see is that if I not protect the recordset while reading
values out of it, sometimes I got an ado exception. I assume this error
occurs because I'm trying to read from the recordset it several of my
threads, and ado also adds additional records to it at the same time.

If I move the "reading values from the recordset" into a critical section
then I don't get errors.

I assumed that ado recordset is thread-safe but it seems it's not. Or do I
screw it somewhere else?

Any help would be appreciated.
Thanks



.



Relevant Pages

  • Re: Is ADO Dead (3)?
    ... The Design of ADO ... ADO uses a single object, the Recordset, as a common representation for ... a forward-only stream of results from a database, ... where data is updated at the data source or cached locally as with the ...
    (comp.databases.ms-access)
  • Re: Is ADO Dead (3)?
    ... The Design of ADO ... ADO uses a single object, the Recordset, as a common representation for ... a forward-only stream of results from a database, ... where data is updated at the data source or cached locally as with the ...
    (comp.databases.ms-access)
  • Re: Is ADO Dead (3)?
    ... The Design of ADO ... ADO uses a single object, the Recordset, as a common representation for ... a forward-only stream of results from a database, ... where data is updated at the data source or cached locally as with the ...
    (comp.databases.ms-access)
  • Re: Is ADO Dead (3)?
    ... The Design of ADO ... ADO uses a single object, the Recordset, as a common representation for ... a forward-only stream of results from a database, ... where data is updated at the data source or cached locally as with the ...
    (comp.databases.ms-access)
  • Re: DAO to ADO Recordset Options
    ... DAO was really fast when dealing with Access data (faster than ADO) but was ... Recordset. ... For client-sided cursors, there is only Static cursor type regardless as ... determines how often data is fetched from the server. ...
    (microsoft.public.data.ado)