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.
|
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, toArray
public 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ügezeitpunktInterruptedException
public void pop(ArchiveRingBuffer.PopObject pobj) throws InterruptedException
pobj:
- vorher zu erzeugendes Objekt zur Übergabe der Werte.InterruptedException
protected void copy2NewArray(int newSize)
copy2NewArray
in class RingBuffer<ArchiveRingBuffer.PopObject>