Re:TypeScript 5.2's New Keyword: 'using'
by kriz9 on Monday June 19, 2023 @12:48PM
(#36393252)
Using libraries we already don't have to write cleanup code. What does the new keyword add that we can't already do? https://node-postgres.com/apis/pool#poolquery
[ Parent
| on HN ]
From what I can tell from that documentation, you do still have to remember to call `client.release()`. There's even a big warning saying "You must release a client when you are finished with it."
Presumably you would want to wrap that in a try/finally so that you don't accidentally not release the client if there is an exception.
You would go from:
const client = await pool.connect()
try {
// Do stuff. Possibly throw.
} finally {
client.release()
}
to await using client = pool.connect()
// Do stuff. Possibly throw.I linked the wrong example. This is the one without having to specifically call release. https://node-postgres.com/apis/pool#poolquery