Class DMReaderImpl
- java.lang.Object
-
- com.biglybt.core.disk.impl.access.impl.DMReaderImpl
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description protected class
DMReaderImpl.requestDispatcher
-
Field Summary
Fields Modifier and Type Field Description private java.util.concurrent.ConcurrentHashMap<DiskAccessRequest,java.lang.String>
active_requests
private AESemaphore
async_read_sem
private int
async_reads
private DiskAccessController
disk_access
private DiskManagerHelper
disk_manager
private long
latency
private static LogIDs
LOGID
private java.util.Set<java.lang.Object[]>
read_requests
private boolean
started
private boolean
stopped
private int
suspended
private java.util.List<java.lang.Object[]>
suspended_requests
private AEMonitor
this_mon
private long
total_read_bytes
private long
total_read_ops
-
Constructor Summary
Constructors Constructor Description DMReaderImpl(DiskManagerHelper _disk_manager)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description DiskManagerReadRequest
createReadRequest(int pieceNumber, int offset, int length)
long
getLatency()
long[]
getStats()
2 entries, first = read-ops, second = read-bytesboolean
hasOutstandingReadRequestForPiece(int piece_number)
DirectByteBuffer
readBlock(int pieceNumber, int offset, int length)
void
readBlock(DiskManagerReadRequest request, DiskManagerReadRequestListener _listener)
void
setSuspended(boolean b)
void
start()
void
stop()
-
-
-
Field Detail
-
LOGID
private static final LogIDs LOGID
-
disk_manager
private final DiskManagerHelper disk_manager
-
disk_access
private final DiskAccessController disk_access
-
active_requests
private final java.util.concurrent.ConcurrentHashMap<DiskAccessRequest,java.lang.String> active_requests
-
async_reads
private int async_reads
-
read_requests
private final java.util.Set<java.lang.Object[]> read_requests
-
async_read_sem
private final AESemaphore async_read_sem
-
suspended_requests
private final java.util.List<java.lang.Object[]> suspended_requests
-
started
private boolean started
-
stopped
private boolean stopped
-
suspended
private int suspended
-
total_read_ops
private long total_read_ops
-
total_read_bytes
private long total_read_bytes
-
latency
private volatile long latency
-
this_mon
private final AEMonitor this_mon
-
-
Constructor Detail
-
DMReaderImpl
public DMReaderImpl(DiskManagerHelper _disk_manager)
-
-
Method Detail
-
setSuspended
public void setSuspended(boolean b)
- Specified by:
setSuspended
in interfaceDMReader
-
createReadRequest
public DiskManagerReadRequest createReadRequest(int pieceNumber, int offset, int length)
- Specified by:
createReadRequest
in interfaceDMReader
-
hasOutstandingReadRequestForPiece
public boolean hasOutstandingReadRequestForPiece(int piece_number)
- Specified by:
hasOutstandingReadRequestForPiece
in interfaceDMReader
-
getStats
public long[] getStats()
Description copied from interface:DMReader
2 entries, first = read-ops, second = read-bytes
-
getLatency
public long getLatency()
- Specified by:
getLatency
in interfaceDMReader
-
readBlock
public DirectByteBuffer readBlock(int pieceNumber, int offset, int length)
-
readBlock
public void readBlock(DiskManagerReadRequest request, DiskManagerReadRequestListener _listener)
-
-