Q: O04OLE C++ Class Library Multi-threaded compliant ?
Date: 1997/12/19
Message-ID: <349A7558.C7D252E1_at_geocities.com>#1/1
Hi,
I use VC5.0 and 004OLE C++ class library in a multi-threaded program
under NT4SP3
I suspect this library does not handle correctly being called by several
threads at the same time.
My threads share the same ODatabase object, passing by pointer and if I
do some Open with Dynasets I get Access Violations in ORA73.DLL,
SqlTnsNT.dll and NTtnt.dll depending of the Sql string, the location of
the code.
If I take care to protect the dynasets access to the database with a
mutex like this :
P(Mutex)
ODyn.Open(OraDb, "select ...");
V(Mutex)
My request runs and don't hang here ... but later ! Maybe I have to protect strongerly my dynaset access against concurent use ...
I would like to have the confirmation that this C++ library does not
support concurrent access because it is not re-entrant (some global
variables somewhere, maybe).
I think that the DLL itself (Oracl.dll for NT) _does_ support
multi-access coming from the same process, that is to say several
request at the same time with the same connection to an Oracle Database
Or maybe I'm wrong and 1 connection = 1 request at the same time ...
Any help appreciated, to my mail address if possible ! Received on Fri Dec 19 1997 - 00:00:00 CET