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

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

Introduction

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

Prototype

public synchronized Object borrowObject() 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);//  w  ww .j a  va  2 s  .  c  o  m

    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());
    // }

}