I have a program that, within a BackgroundWorke r, runs a small SELECT query from a DB2 Database. The basic form looks like this:

Code:
BackgroundWorkerFunction(BackgroundWorker b)
  - open DB2Connection
  - run query
  - close DB2Connection
  - RaiseEvent QueryDone
Now, I've been very careful not to put a DB2Connection within a loop, because I don't want to open multiple connections....