Le transazioni vengono avviate/impegnate per connessione. A meno che tu non stia facendo alcune cose molto specifiche (non riesco davvero a pensare a un esempio in cui ciò sarebbe giustificato ad essere onesti), è meglio con un pool di connessioni e una connessione per thread.