You can share an pool between multiple verticles or instances of the same verticle. Such pool should be created outside
a verticle otherwise it will be closed when the verticle that created it is undeployed

[source,$lang]
----
{@link examples.SqlClientExamples#poolSharing1}
----

You can also create a shared pool in each verticle:

[source,$lang]
----
{@link examples.SqlClientExamples#poolSharing2}
----

The first time a shared pool is created it will create the resources for the pool. Subsequent calls will reuse this pool and create
a lease to this pool. The resources are disposed after all leases have been closed.

By default, a pool reuses the current event-loop when it needs to create a TCP connection. The shared pool will
therefore randomly use event-loops of verticles using it.

You can assign a number of event loop a pool will use independently of the context using it

[source,$lang]
----
{@link examples.SqlClientExamples#poolSharing3}
----
