Package org.eclipse.ecf.core.sharedobject.util

# Interface IQueueDequeue

All Known Subinterfaces:
  `IQueue`

public interface IQueueDequeue

## Method Summary

Modifier and Type
Method
Description
`Event`
`blocking_dequeue(int timeout_millis)`
Dequeue a single Event.
`Event[]`
`blocking_dequeue(int timeout_millis, int num)`
Dequeue a multiple Events.
`Event[]`
`blocking_dequeue_all(int timeout_millis)`
Dequeue all Events currently on queue.
`Event`
`dequeue()`
Dequeue a single event.
`Event[]`
`dequeue(int num)`
Dequeue several events in one operation.
`Event[]`
`dequeue_all()`
Dequeue all available Events.
`int`
`size()`
Provide the current size of the queue (the number of Events) currently on the queue.

## Method Details

### dequeue

Event dequeue()
Dequeue a single event. Returns null if no Events available for dequeue

Returns:
  Event the Event dequeued. Null if queue is empty.

### dequeue

Event[] dequeue(int num)
Dequeue several events in one operation. num events are dequeued.

Returns:
  Event[] the Events dequeue. Returns null if there are not sufficient events on queue to support dequeuing num events

### dequeue_all

Event[] dequeue_all()
Dequeue all available Events.

Returns:
  Event[] the events on this queue. Returns null if there are no events in queue

### blocking_dequeue

Event blocking_dequeue(int timeout_millis)
Dequeue a single Event. Blocks until an Event is available for dequeue, or until timeout_millis have elapsed. If timeout_millis is -1, dequeue does not timeout.

Parameters:
  `timeout_millis` - the timeout for a dequeue in milliseconds.
Returns:
  Event removed from queue. Returns null if no events on queue.

### blocking_dequeue

Event[] blocking_dequeue(int timeout_millis, int num)
Dequeue a multiple Events. Blocks until num Events are available for dequeue, or until timeout_millis have elapsed. If timeout_millis is -1, dequeue does not timeout.

Parameters:
  `timeout_millis` - the timeout for a dequeue in milliseconds.
  `num` - the number of Events to dequeue
Returns:
  Event [] the num Events removed from queue

### blocking_dequeue_all

Event[] blocking_dequeue_all(int timeout_millis)
Dequeue all Events currently on queue. Blocks until num Events are available for dequeue, or until timeout_millis have elapsed. If timeout_millis is -1, dequeue does not timeout.

Parameters:
  `timeout_millis` - the timeout for a dequeue in milliseconds.
Returns:
  Event [] the num Events removed from queue

### size

int size()
Provide the current size of the queue (the number of Events) currently on the queue.

Returns:
  size the int size of the queue