If you use the SqlMapper on diffrent thread you only need one SqlMapper object.
The SqlMap or Dao context is per thread.
 
In your case if your 2 threads access the same table in a transaction, one may block the other until the first finish.

 
On 2/14/06, Ron Grabowski <[EMAIL PROTECTED]> wrote:
Have you tried creating two SqlMapper objects and using each one in a
seperate thread?

// first thread
SqlMapper sqlMap1 = createSqlMap("SqlMap1.config");
IDataImporterDao dataImporterDao = new DataImporterDao(sqlMap1);

// second thread
SqlMapper sqlMap2 = createSqlMap("SqlMap2.config");
IDataImporterDao dataImporterDao = new DataImporterDao(sqlMap2);

Maybe you could use DataAccess' DaoManager to define two context and
use each context on its own thread:

// first thread
DataManager thread1Manager = DaoManager.GetContext("Thread1");
IDataImporterDao dataImportDao = thread1Manager.GetDao(
typeof(IDataImporterDao)) as IDataImporterDao;

// second thread
DataManager thread2Manager = DaoManager.GetContext ("Thread2");
IDataImporterDao dataImportDao = thread2Manager.GetDao(
typeof(IDataImporterDao)) as IDataImporterDao;

--- Shawn Smiley <[EMAIL PROTECTED] > wrote:

> Is it possible to have one set of iBatis objects use different
> database connections on different threads?
>
> My specific case is that I have a data import app running as a
> Windows Service.  I have one thread that handles the actual data
> import of around 4000 records (within a single transaction) that
> periodically raises events to the main service thread that
> periodically updates a job queue table with the current status of the
> import process.
>
> What's currently happening is that I get an initial status message
> written to the database and then no other status messages make it to
> the DB until the import transaction completes.  I'm not sure if the
> status updates are being included in the transaction or not.  I need
> them to be completely independent of the import Transaction.
>
> I know that the status messages are being picked up by the service
> from the logging I'm doing (I see every status event in the logs).
>
> Is what I'm trying to do possible and if so, what can I do to make
> this work?
>
> Thanks,
> Shawn
>
>
> ---------------------------------
> Relax. Yahoo! Mail virus scanning helps detect nasty viruses!


Reply via email to