public class ArchiveRingBuffer extends RingBuffer<ArchiveRingBuffer.PopObject>
| Modifier and Type | Class and Description |
|---|---|
class |
ArchiveRingBuffer.PopObject
Mit dieser Klasse kann man Paare in einem Aufruf aus dem Ringpuffer poppen.
|
| Modifier and Type | Field and Description |
|---|---|
private long[] |
timeBuf |
buf, chunkSize, firstElem, isEmpty, lastElem, maxSize, MIN_CHUNK_SIZE, noOfChunks, UNBOUNDED_SIZE| Constructor and Description |
|---|
ArchiveRingBuffer(int chunkSize,
int mxsize) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
copy2NewArray(int newSize) |
void |
pop(ArchiveRingBuffer.PopObject pobj)
Fügt die ersten Element der beiden Warteschlange in das uebergebene PopObject ein.
|
boolean |
push(Object elem,
long time,
long timeout)
Fügt ein Objekt in die Warteschlange an letzter Stelle ein.
|
adjustSizePostDecr, adjustSizePreIncr, changeMaxSize, getLast, isEmpty, isFirstElemOneAheadOfLastElem, isFull, maxSize, next, oneStepFurther, peek, pop, pop, popNoWait, push, size, status, toArraypublic ArchiveRingBuffer(int chunkSize,
int mxsize)
chunkSize: - Größe der Blöcke, um die das Feld der Warteschlange wächst und schrumpft.mxSize: - Maximale Groesse der Warteschlange. Wird diese ueberschritten, liefert #push(E) falsepublic boolean push(Object elem, long time, long timeout) throws InterruptedException
elem: - Einzufügendes Objekttime: - EinfügezeitpunktInterruptedExceptionpublic void pop(ArchiveRingBuffer.PopObject pobj) throws InterruptedException
pobj: - vorher zu erzeugendes Objekt zur Übergabe der Werte.InterruptedExceptionprotected void copy2NewArray(int newSize)
copy2NewArray in class RingBuffer<ArchiveRingBuffer.PopObject>