From: Ken L. <ke...@gl...> - 2002-12-02 18:11:14
|
What I did was add a hook to MiscUtils/DBPool.py to shut down the pool's connections: --- /tmp/Webware/MiscUtils/DBPool.py Sat Mar 30 23:19:07 2002 +++ ./DBPool.py Wed Oct 9 18:01:26 2002 @@ -86,10 +86,16 @@ # @@ 2000-12-04 ce: Should we really make all the connections now? # Couldn't we do this on demand? + self._cons = [] for i in range(maxConnections): con = apply(dbModule.connect, args, kwargs) self.addConnection(con) + self._cons.append(con) + def shutDown(self): + for con in self._cons: + try: con.close() + except: pass When you create your DBPool instance, typically in contextInitialize(), arrange to have pool.shutDown() called at application shutdown. I find it convenient to make the pool an attribute of the current application: def contextInitialize(app, contextDir): ... app._dbpool = DBPool(...) app.addShutDownHandler(app._dbpool.shutDown) |