Example usage for org.apache.commons.pool.impl StackObjectPool returnObject

List of usage examples for org.apache.commons.pool.impl StackObjectPool returnObject

Introduction

In this page you can find the example usage for org.apache.commons.pool.impl StackObjectPool returnObject.

Prototype

public synchronized void returnObject(Object obj) throws Exception 

Source Link

Usage

From source file:org.codelabor.system.remoting.tcp.factories.SocketPoolTest.java

@Test
public void testStackObjectPool() throws Exception {
    SocketPoolFactory socketPoolFactory = new SocketPoolFactory();
    socketPoolFactory.setHost("localhost");
    socketPoolFactory.setPort(8080);/*from  ww  w.j av a 2 s  .  c  om*/

    StackObjectPool socketPool = new StackObjectPool(socketPoolFactory, 10, 5);

    Socket sockets[] = new Socket[10];
    for (int i = 0; i < 10; i++) {
        sockets[i] = (Socket) socketPool.borrowObject();
        System.out.println("borrowObject: " + sockets[i].hashCode());
        System.out.println("active: " + socketPool.getNumActive() + ", idle: " + socketPool.getNumIdle());

    }
    for (int i = 0; i < 10; i++) {
        System.out.println("returnbject: " + sockets[i].hashCode());
        socketPool.returnObject(sockets[i]);
        sockets[i] = null;
        System.out.println("active: " + socketPool.getNumActive() + ", idle: " + socketPool.getNumIdle());
    }

    // while (true) {
    // Thread.sleep(1000);
    // System.out.println("active: " + socketPool.getNumActive()
    // + ", idle: " + socketPool.getNumIdle());
    // }

}