Não. Tenha uma conexão diferente em cada thread.
As conexões devem ser agrupadas, portanto, quando você abrir uma nova conexão, ela não será realmente abrir uma nova conexão, ele apenas pegará uma conexão aberta do pool.
Por causa disso, não há razão para ter conexões tão duradouras compartilhadas entre threads. Basta criar uma nova conexão para o escopo de cada transação lógica e deixar o pool de conexões cuidar do resto.