El requisito previo para que Hikari cierre la conexión es que la conexión esté actualmente inactiva (STATE_IN_USE) o reservada (STATE_RESERVED).
HikariPool#closeConnection cierra directamente la lógica de conexión
Al cerrar subprocesos para tareas de detección como houseKeeper y maxLifetime, debe asegurarse de que la conexión de base de datos esté inactiva. Se llama al método de desalojo suave softEvictConnection.
Primero marque la conexión como desalojada. está inactivo en este momento. ConnectionBag .reserve(poolEntry) se puede ejecutar con éxito para cambiar su estado a RESERVADO y luego cerrar Connection directamente; de lo contrario, debe esperar a que otros subprocesos soliciten la conexión a la base de datos y luego cerrar la conexión con desalojar; =verdadero