private void chunkIsReady(PackChunk chunk) { ChunkKey key = chunk.getChunkKey(); ready.put(key, chunk); bytesReady += chunk.getTotalSize(); if (status.put(key, Status.READY) == Status.WAITING) notifyAll(); }
private void chunkIsReady(PackChunk chunk) { ChunkKey key = chunk.getChunkKey(); ready.put(key, chunk); bytesReady += chunk.getTotalSize(); if (status.put(key, Status.READY) == Status.WAITING) notifyAll(); }
private void prune() { while (maxBytes < curBytes) { Node n = lruTail; if (n == null) break; PackChunk c = n.chunk; curBytes -= c.getTotalSize(); byKey.remove(c.getChunkKey()); remove(n); } }
private void prune() { while (maxBytes < curBytes) { Node n = lruTail; if (n == null) break; PackChunk c = n.chunk; curBytes -= c.getTotalSize(); byKey.remove(c.getChunkKey()); remove(n); } }
private PackChunk useReadyChunk(ChunkKey key) { PackChunk chunk = ready.remove(key); status.put(chunk.getChunkKey(), Status.DONE); bytesReady -= chunk.getTotalSize(); if (automaticallyPushHints) { push(chunk.getMeta()); maybeStartGet(); } return chunk; }
private PackChunk useReadyChunk(ChunkKey key) { PackChunk chunk = ready.remove(key); status.put(chunk.getChunkKey(), Status.DONE); bytesReady -= chunk.getTotalSize(); if (automaticallyPushHints) { push(chunk.getMeta()); maybeStartGet(); } return chunk; }
void put(PackChunk chunk) { Node n = byKey.get(chunk.getChunkKey()); if (n != null && n.chunk == chunk) { hit(n); return; } curBytes += chunk.getTotalSize(); prune(); n = new Node(); n.chunk = chunk; byKey.put(chunk.getChunkKey(), n); first(n); }
void put(PackChunk chunk) { Node n = byKey.get(chunk.getChunkKey()); if (n != null && n.chunk == chunk) { hit(n); return; } curBytes += chunk.getTotalSize(); prune(); n = new Node(); n.chunk = chunk; byKey.put(chunk.getChunkKey(), n); first(n); }