Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我仔细检查了我的代码,并且在 finally 块中有 conn.close 但是当我执行 SELECT * FROM pg_stat_activity; 我看到许多空闲连接。我怎样才能解决这个问题?
最可能的原因是您的应用程序正在使用连接池。如果是这样,池将抓取连接并保持其中一部分打开,以便可以重用它们。在执行另一个命令或关闭应用程序之前,连接将显示为 IDLE。
如果连接没有被关闭,您可能会看到类似 IDLE - In Transaction 的内容,这意味着连接已打开并等待执行提交或回滚,但未收到任何命令。
另外,我知道你说你关闭了连接,所以我不确定这是否适用于你,但我只是想抛出我过去也遇到过问题,因为没有明确关闭 PreparedStatements。