Ejemplo n.º 1
0
        public void ZeroCapacities()
        {
            var pool       = new DefaultObjectPool <TestPooledObject>(() => new TestPooledObject(), 0, 0);
            var origLeased = pool.Lease();

            pool.Return(origLeased);
            Assert.AreNotSame(origLeased, pool.Lease());
        }
Ejemplo n.º 2
0
        public void LeaseSetsReturnAction()
        {
            var pool       = new DefaultObjectPool <TestPooledObject>(() => new TestPooledObject(), 10, 0);
            var origLeased = pool.Lease();

            origLeased.ReturnAction(origLeased);
            pool.Dispose();
            Assert.AreNotSame(origLeased, pool.Lease());
        }
Ejemplo n.º 3
0
        public void DisposeCleansSharedPool()
        {
            var pool       = new DefaultObjectPool <TestPooledObject>(() => new TestPooledObject(), 10, 0);
            var origLeased = pool.Lease();

            pool.Return(origLeased);
            pool.Dispose();
            Assert.AreNotSame(origLeased, pool.Lease());
        }
Ejemplo n.º 4
0
        public void ObjectIsReused(int sharedCapacity, int threadLocalCapacity)
        {
            var pool       = new DefaultObjectPool <TestPooledObject>(() => new TestPooledObject(), sharedCapacity, threadLocalCapacity);
            var origLeased = pool.Lease();

            pool.Return(origLeased);
            Assert.AreSame(origLeased, pool.Lease());
            Assert.AreNotSame(origLeased, pool.Lease());
        }