Sarebbe buona norma rilasciare il prima possibile le risorse usate, a meno che non vi sia in mezzo una transazione elaborativa particolare.
Detto questo, la cosa migliore è di aprire la connessione, fare tutte le opportune operazioni sul db, e richiudere subito, rilasciando la risorsa il prima possibile.
Di certo, come ho detto prima, se il processo è lungo, e deve mantenere la sua sessione appena aperta, allora è tutto un'altro paio di maniche, ma attenzione al blocco di processi paralleli. In questo caso sarebbe utile un'analisi se effettuare o meno un sistema a stati finiti, in modo da dare l'opportunita anche ad altre cose di poter funzionare.