assert Wires.isReady(header); bytes.readSkip(len);
public int getWritingThreadId() { final WireStore wireStore = queue.storeForCycle(queue.cycle(), queue.epoch(), false); if (wireStore != null) { final long position = wireStore.writePosition(); final int header = wireStore.bytes().readVolatileInt(position); if (Wires.isReady(header)) { final long nextHeaderPosition = position + Wires.lengthOf(header) + Wires.SPB_HEADER_SIZE; final int unfinishedHeader = wireStore.bytes(). readVolatileInt(nextHeaderPosition); if (Wires.isNotComplete(unfinishedHeader) && unfinishedHeader != 0) { return Wires.extractTidFromHeader(unfinishedHeader); } } } return NO_CURRENT_WRITER; } }
assert Wires.isReady(header); bytes.readSkip(len);
public int getWritingThreadId() { final WireStore wireStore = queue.storeForCycle(queue.cycle(), queue.epoch(), false); if (wireStore != null) { final long position = wireStore.writePosition(); final int header = wireStore.bytes().readVolatileInt(position); if (Wires.isReady(header)) { final long nextHeaderPosition = position + Wires.lengthOf(header) + Wires.SPB_HEADER_SIZE; final int unfinishedHeader = wireStore.bytes(). readVolatileInt(nextHeaderPosition); if (Wires.isNotComplete(unfinishedHeader) && unfinishedHeader != 0) { return Wires.extractTidFromHeader(unfinishedHeader); } } } return NO_CURRENT_WRITER; } }