Požičiava drahé objekty zo zásoby a po použití ich berie späť.
class Spojenie { vykonaj(dopyt) { // práca nad drahým zdrojom }} class SpojeniaPool { #volne = []; #pozicane = new Set(); constructor(pocet) { for (let i = 0; i < pocet; i += 1) { this.#volne.push(new Spojenie()); } } ziskaj() { if (this.#volne.length === 0) { throw new Error('pool je prázdny'); } const spojenie = this.#volne.pop(); this.#pozicane.add(spojenie); return spojenie; } vrat(spojenie) { this.#pozicane.delete(spojenie); this.#volne.push(spojenie); }} const pool = new SpojeniaPool(3); const a = pool.ziskaj();const b = pool.ziskaj(); pool.vrat(a);const c = pool.ziskaj(); a === c; // true — pool vydal ten istý objekt znova