From: Vladimir Tsvigun <praktik@hm...> - 2004-05-05 09:43:16
> It looks like the async attribute is never set, so does that mean the
> driver cannot execute statements asynchronously?
By default, drivers execute ODBC functions synchronously; that is, the
application calls a function and the driver does not return control to the
application until it has finished executing the function. However, some
functions can be executed asynchronously; that is, the application calls the
function, and the driver, after minimal processing, returns control to the
application. The application can then call other functions while the first
function is still executing.
Asynchronous execution is supported for most functions that are largely
executed on the data source, such as the functions to prepare and execute
SQL statements, retrieve metadata, and fetch data. It is most useful when
the task being executed on the data source takes a long time, such as a
complex query against a large database.
In general, applications should execute functions asynchronously only on
single-threaded operating systems. On multithread operating systems,
applications should execute functions on separate threads, rather than
executing them asynchronously on the same thread. No functionality is lost
if drivers that operate only on multithread operating systems do not support