@InterfaceAudience.Private final class RingBufferTruck extends Object
FSWALEntry
for making an append OR it has a SyncFuture
to represent a 'sync'
invocation. Truck instances are reused by the disruptor when it gets around to it so their
payload references must be discarded on consumption to release them to GC.Modifier and Type | Class and Description |
---|---|
static class |
RingBufferTruck.Type |
Modifier and Type | Field and Description |
---|---|
private FSWALEntry |
entry |
private SyncFuture |
sync
Either this syncFuture is set or entry is set, but not both.
|
private RingBufferTruck.Type |
type |
Constructor and Description |
---|
RingBufferTruck() |
Modifier and Type | Method and Description |
---|---|
(package private) void |
load(FSWALEntry entry)
Load the truck with a
FSWALEntry . |
(package private) void |
load(SyncFuture syncFuture)
Load the truck with a
SyncFuture . |
(package private) RingBufferTruck.Type |
type() |
(package private) FSWALEntry |
unloadAppend()
Unload the truck of its
FSWALEntry payload. |
(package private) SyncFuture |
unloadSync()
Unload the truck of its
SyncFuture payload. |
private RingBufferTruck.Type type
private SyncFuture sync
private FSWALEntry entry
RingBufferTruck()
void load(FSWALEntry entry)
FSWALEntry
.void load(SyncFuture syncFuture)
SyncFuture
.RingBufferTruck.Type type()
FSWALEntry unloadAppend()
FSWALEntry
payload. The internal reference is released.SyncFuture unloadSync()
SyncFuture
payload. The internal reference is released.Copyright © 2007–2019 The Apache Software Foundation. All rights reserved.