java.util.concurrent.LinkedBlockingQueue.peek()方法的使用及代码示例

x33g5p2x  于2022-01-23 转载在 其他  
字(6.0k)|赞(0)|评价(0)|浏览(173)

本文整理了Java中java.util.concurrent.LinkedBlockingQueue.peek()方法的一些代码示例,展示了LinkedBlockingQueue.peek()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。LinkedBlockingQueue.peek()方法的具体详情如下:
包路径:java.util.concurrent.LinkedBlockingQueue
类名称:LinkedBlockingQueue
方法名:peek

LinkedBlockingQueue.peek介绍

暂无

代码示例

代码示例来源:origin: ethereum/ethereumj

@Override
  public synchronized T peek() {
    if (isEmpty()) {
      return super.peek();
    } else {
      T ret = Collections.min(this, (Comparator<? super T>) comparator);
      return ret;
    }
  }
}

代码示例来源:origin: wangdan/AisenWeiBo

@Override
public PublishBean peek() {
  PublishBean bean = super.peek();
  if(bean != null && callback != null)
    callback.onPublishPeek(bean);
  return bean;
}

代码示例来源:origin: apache/storm

try {
  while (taskIdsQueue.peek() == null && boltMsgQueue.peek() == null) {
    if (nanos <= 0) {
      return null;

代码示例来源:origin: qunarcorp/qmq

@Override
public boolean cleanLocalBuffer() {
  while (!messageBuffer.isEmpty()) {
    if (!push(messageBuffer.peek())) {
      return false;
    } else {
      messageBuffer.poll();
    }
  }
  return true;
}

代码示例来源:origin: jMonkeyEngine/jmonkeyengine

public Void call() throws Exception {
    Screenshots.convertScreenShot(item.buffer, item.image);
    item.data = writer.writeImageToBytes(item.image, quality);
    while (usedItems.peek() != item) {
      Thread.sleep(1);
    }
    writer.addImage(item.data);
    usedItems.poll();
    freeItems.add(item);
    return null;
  }
});

代码示例来源:origin: qunarcorp/qmq

private boolean sendAck() {
  AckSendEntry sendEntry;
  if (inSending.get()) return false;
  sendLock.lock();
  try {
    if (inSending.get() || sendEntryQueue.isEmpty()) return false;
    sendEntry = sendEntryQueue.peek();
    if (sendEntry != null) {
      inSending.set(true);
    } else {
      sendEntryQueue.poll();
      LOGGER.error("sendEntry is null");
      return false;
    }
  } finally {
    sendLock.unlock();
  }
  doSendAck(sendEntry);
  return true;
}

代码示例来源:origin: jMonkeyEngine/jmonkeyengine

public Void call() throws Exception {
    if (fastMode) {
      item.data = item.buffer.array();
    } else {
      AndroidScreenshots.convertScreenShot(item.buffer, item.image);
      item.data = writer.writeImageToBytes(item.image, quality);
    }
    while (usedItems.peek() != item) {
      Thread.sleep(1);
    }
    writer.addImage(item.data);
    usedItems.poll();
    freeItems.add(item);
    return null;
  }
});

代码示例来源:origin: prestodb/presto

private static void checkErrors(TaskStateMachine taskStateMachine)
{
  if (taskStateMachine.getFailureCauses().size() > 0) {
    Throwable exception = requireNonNull(taskStateMachine.getFailureCauses().peek());
    throw new RuntimeException(exception.getMessage(), exception);
  }
}

代码示例来源:origin: jankotek/mapdb

/**
 * peek returns next element, or null if empty
 */
public void testPeek() {
  LinkedBlockingQueue q = populatedQueue(SIZE);
  for (int i = 0; i < SIZE; ++i) {
    assertEquals(i, q.peek());
    assertEquals(i, q.poll());
    assertTrue(q.peek() == null ||
          !q.peek().equals(i));
  }
  assertNull(q.peek());
}

代码示例来源:origin: apache/nifi

private void transferQueue(ProcessSession session){
  while (!mqttQueue.isEmpty()) {
    FlowFile messageFlowfile = session.create();
    final MQTTQueueMessage mqttMessage = mqttQueue.peek();

代码示例来源:origin: qunarcorp/qmq

@Override
public void success() {
  if (lastSendOkOffset != -1 && lastSendOkOffset + 1 != sendEntry.getPullOffsetBegin()) {
    LOGGER.warn("{}/{} ack send not continous. last={}, send={}", subject, group, lastSendOkOffset, sendEntry);
    sendErrorCount.inc();
  }
  lastSendOkOffset = sendEntry.getPullOffsetLast();
  minPullOffset.set(sendEntry.getPullOffsetLast() + 1);
  final int sendNum = (int) (sendEntry.getPullOffsetLast() - sendEntry.getPullOffsetBegin()) + 1;
  toSendNum.getAndAdd(-sendNum);
  sendNumQps.mark(sendNum);
  AckSendEntry head = sendEntryQueue.peek();
  if (head == null || head.getPullOffsetBegin() != sendEntry.getPullOffsetBegin()) {
    LOGGER.error("ack send error: {}, {}", sendEntry, head);
    sendErrorCount.inc();
  } else {
    LOGGER.debug("AckSendRet ok [{}, {}]", sendEntry.getPullOffsetBegin(), sendEntry.getPullOffsetLast());
    sendEntryQueue.poll();
  }
  inSending.set(false);
  AckSendQueue.this.sendAck();
}

代码示例来源:origin: org.apache.zookeeper/zookeeper

bb = outgoingBuffers.peek();
if (bb == ServerCnxnFactory.closeConn) {
  throw new CloseRequestException("close requested");

代码示例来源:origin: apache/zookeeper

recvqueue.peek().leader, recvqueue
          .peek().zxid)) {
recvqueue.poll();

代码示例来源:origin: jankotek/mapdb

/**
 * Returns a new queue of given size containing consecutive
 * Integers 0 ... n - 1.
 */
private static LinkedBlockingQueue<Integer> populatedQueue(int n) {
  LinkedBlockingQueue<Integer> q = new LinkedBlockingQueue<>(n);
  assertTrue(q.isEmpty());
  for (int i = 0; i < n; i++)
    assertTrue(q.offer(new Integer(i)));
  assertFalse(q.isEmpty());
  assertEquals(0, q.remainingCapacity());
  assertEquals(n, q.size());
  assertEquals((Integer) 0, q.peek());
  return q;
}

代码示例来源:origin: org.apache.zookeeper/zookeeper

recvqueue.peek().leader, recvqueue
          .peek().zxid)) {
recvqueue.poll();

代码示例来源:origin: apache/flink

@Test
  public void testIterationHeadWatermarkEmission() throws Exception {
    StreamTaskTestHarness<Integer> harness = new StreamTaskTestHarness<>(
        StreamIterationHead::new,
        BasicTypeInfo.INT_TYPE_INFO);
    harness.setupOutputForSingletonOperatorChain();
    harness.getStreamConfig().setIterationId("1");
    harness.getStreamConfig().setIterationWaitTime(1);

    harness.invoke();
    harness.waitForTaskCompletion();

    assertEquals(1, harness.getOutput().size());
    assertEquals(new Watermark(Long.MAX_VALUE), harness.getOutput().peek());
  }
}

代码示例来源:origin: dermotte/LIRE

while (!locallyEnded) {
  try {
    if (queue.peek()==null) {

代码示例来源:origin: dermotte/LIRE

while (!locallyEnded) {
  try {
    if (queue.peek()==null) {

代码示例来源:origin: i2p/i2p.i2p

public void runJob() {
    HopConfig cur = null;
    long now = getContext().clock().now() + LEAVE_BATCH_TIME; // leave all expiring in next 10 sec
    long nextTime = now + 10*60*1000;
    while ((cur = _configs.peek()) != null) {
      long exp = cur.getExpiration() + (2 * Router.CLOCK_FUDGE_FACTOR) + LEAVE_BATCH_TIME;
      if (exp < now) {
        _configs.poll();
        if (_log.shouldLog(Log.INFO))
          _log.info("Expiring " + cur);
        remove(cur);
      } else {
        if (exp < nextTime)
          nextTime = exp;
        break;
      }
    }
    getTiming().setStartAfter(nextTime);
    getContext().jobQueue().addJob(LeaveTunnel.this);
  }
}

代码示例来源:origin: com.google.code.maven-play-plugin.org.playframework/play

public synchronized Promise<T> nextEvent() {
  if (events.isEmpty()) {
    LazyTask task = new LazyTask(ctx);
    waiting.add(task);
    return task;
  }
  return new LazyTask(events.peek(), ctx);
}

相关文章

微信公众号

最新文章

更多