Connection pools are implemented in the io.pools vocabulary. They are used to reuse sockets and connections which may be potentially expensive to create and destroy.

The class of connection pools:

Creating connection pools:
<pool> ( class -- pool )

A utility combinator:
with-pool ( pool quot -- )

Acquiring and returning connections, and a utility combinator:
acquire-connection ( pool -- conn )

return-connection ( conn pool -- )

with-pooled-connection ( pool quot -- )

Pools are not created directly, instead one uses subclasses which implement a generic word:
make-connection ( pool -- conn )

One example is a datagram socket pool:

<datagram-pool> ( addrspec -- pool )