This is a pretty bad benchmark. Of course the harbor with pooling is faster. It's creating all 100000 objects outside the timer, while the harbor without pooling is creating them within the timer. If I change the code so that it creates the objects inside the timer, I get the following results which are nowhere near as good:<p><pre><code> Total With Object Pooling: 633.393 ms
Total Without Object Pooling: 714.89 ms
</code></pre>
This is hardly 2x faster and the speed increase that is there probably comes more from allocating the objects in a list comprehension in the pooled harbor.