org.openqa.jetty.util
Class BlockingQueue

java.lang.Object
  extended by org.openqa.jetty.util.BlockingQueue

public class BlockingQueue
extends Object

Blocking queue. Implemented as circular buffer in a Vector. Synchronization is on the vector to avoid double synchronization.

Version:
$Id: BlockingQueue.java,v 1.5 2004/05/09 20:32:49 gregwilkins Exp $
Author:
Greg Wilkins (gregw)

Constructor Summary
BlockingQueue(int maxSize)
          Constructor.
BlockingQueue(Object lock, int maxSize)
          Constructor.
 
Method Summary
 void clear()
           
 Object get()
          Get object from queue.
 Object get(int timeoutMs)
          Get from queue.
 int maxSize()
           
 Object peek()
          Peek at the queue.
 Object peek(int timeoutMs)
          Peek at the queue.
 void put(Object o)
          Put object in queue.
 void put(Object o, int timeout)
          Put object in queue.
 int size()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BlockingQueue

public BlockingQueue(int maxSize)
Constructor.


BlockingQueue

public BlockingQueue(Object lock,
                     int maxSize)
Constructor.

Method Detail

clear

public void clear()

size

public int size()

maxSize

public int maxSize()

put

public void put(Object o)
         throws InterruptedException
Put object in queue.

Parameters:
o - Object
Throws:
InterruptedException

put

public void put(Object o,
                int timeout)
         throws InterruptedException
Put object in queue.

Parameters:
timeout - If timeout expires, throw InterruptedException
o - Object
Throws:
InterruptedException - Timeout expired or otherwise interrupted

get

public Object get()
           throws InterruptedException
Get object from queue. Block if there are no objects to get.

Returns:
The next object in the queue.
Throws:
InterruptedException

get

public Object get(int timeoutMs)
           throws InterruptedException
Get from queue. Block for timeout if there are no objects to get.

Parameters:
timeoutMs - the time to wait for a job
Returns:
The next object in the queue, or null if timedout.
Throws:
InterruptedException

peek

public Object peek()
            throws InterruptedException
Peek at the queue. Block if there are no objects to peek.

Returns:
The next object in the queue, or null if timedout.
Throws:
InterruptedException

peek

public Object peek(int timeoutMs)
            throws InterruptedException
Peek at the queue. Block for timeout if there are no objects to peek.

Parameters:
timeoutMs - the time to wait for a job
Returns:
The next object in the queue, or null if timedout.
Throws:
InterruptedException


Copyright © 2012. All Rights Reserved.