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

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

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

LinkedBlockingDeque.offer介绍

暂无

代码示例

代码示例来源:origin: alibaba/jstorm

public void handle(Signal signal) {
  waitingSignals.offer(signal);
}

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

@Override
public boolean offer(CallRunner callRunner) {
 return queue.offer(callRunner);
}

代码示例来源:origin: alibaba/jstorm

public void offer(K entry) {
  synchronized (_lock) {
    LinkedBlockingDeque<K> bucket = _buckets.getFirst();
    bucket.offer(entry);
  }
}

代码示例来源:origin: wildfly/wildfly

@Override
  public void close() {
    closed = true;
    recycler.accept(finObj);
    if(!pool.offer(finObj)) {
      consumer.accept(finObj);
    }
  }
};

代码示例来源:origin: lealone/Lealone

public void add(long i) {
  if (!deque.offer(i)) {
    Long removed = deque.remove();
    sum.addAndGet(-removed);
    deque.offer(i);
  }
  sum.addAndGet(i);
}

代码示例来源:origin: jersey/jersey

private void write(Provider<ByteBuffer> bufferSupplier) throws IOException {
  checkClosed();
  try {
    boolean queued = queue.offer(bufferSupplier.get(), WRITE_TIMEOUT, TimeUnit.MILLISECONDS);
    if (!queued) {
      throw new IOException("Buffer overflow.");
    }
  } catch (InterruptedException e) {
    throw new IOException(e);
  }
}

代码示例来源:origin: alibaba/nacos

private void addResult(HealthCheckResult result) {
  if (!Switch.getIncrementalList().contains(result.getDom())) {
    return;
  }
  if (!healthCheckResults.offer(result)) {
    Loggers.EVT_LOG.warn("[HEALTH-CHECK-SYNC] failed to add check result to queue, queue size: {}", healthCheckResults.size());
  }
}

代码示例来源:origin: alibaba/nacos

public void addUpdatedDom2Queue(String namespaceId, String domName, String serverIP, String checksum) {
  lock.lock();
  try {
    toBeUpdatedDomsQueue.offer(new DomainKey(namespaceId, domName, serverIP, checksum), 5, TimeUnit.MILLISECONDS);
  } catch (Exception e) {
    toBeUpdatedDomsQueue.poll();
    toBeUpdatedDomsQueue.add(new DomainKey(namespaceId, domName, serverIP, checksum));
    Loggers.SRV_LOG.error("[DOMAIN-STATUS] Failed to add domain to be updatd to queue.", e);
  } finally {
    lock.unlock();
  }
}

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

@Override
protected void doPut(Event event) throws InterruptedException {
 channelCounter.incrementEventPutAttemptCount();
 int eventByteSize = (int) Math.ceil(estimateEventSize(event) / byteCapacitySlotSize);
 if (!putList.offer(event)) {
  throw new ChannelException(
    "Put queue for MemoryTransaction of capacity " +
    putList.size() + " full, consider committing more frequently, " +
    "increasing capacity or increasing thread count");
 }
 putByteCounter += eventByteSize;
}

代码示例来源:origin: alibaba/jstorm

@Override
public void fail(Object msgId, List<Object> values) {
  OnsTuple OnsTuple = (OnsTuple) values.get(0);
  AtomicInteger failTimes = OnsTuple.getFailureTimes();
  int failNum = failTimes.incrementAndGet();
  if (failNum > maxFailTimes) {
    LOG.warn("Message " + OnsTuple.getMessage().getMsgID() + " fail times " + failNum);
    finishTuple(OnsTuple);
    return;
  }
  if (flowControl) {
    sendingQueue.offer(OnsTuple);
  } else {
    sendTuple(OnsTuple);
  }
}

代码示例来源:origin: alibaba/jstorm

@Override
  public Action consume(Message message, ConsumeContext context) {
    try {
      OnsTuple OnsTuple = new OnsTuple(message);

      if (flowControl) {
        sendingQueue.offer(OnsTuple);
      } else {
        sendTuple(OnsTuple);
      }

      if (autoAck) {
        return Action.CommitMessage;
      } else {
        OnsTuple.waitFinish();
        if (OnsTuple.isSuccess()) {
          return Action.CommitMessage;
        } else {
          return Action.ReconsumeLater;
        }
      }

    } catch (Exception e) {
      LOG.error("Failed to emit " + id, e);
      return Action.ReconsumeLater;
    }
  }
}

代码示例来源:origin: jersey/jersey

@Override
public void close() throws IOException {
  if (queue.size() == CAPACITY) {
    boolean offer = false;
    try {
      offer = queue.offer(VOID, WRITE_TIMEOUT, TimeUnit.MILLISECONDS);
    } catch (InterruptedException e) {
      // ignore.
    }
    if (!offer) {
      queue.removeLast();
      queue.add(VOID);
    }
  } else {
    queue.add(VOID);
  }
  ctx.flush();
}

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

if (puts > 0) {
 while (!putList.isEmpty()) {
  if (!queue.offer(putList.removeFirst())) {
   throw new RuntimeException("Queue add failed, this shouldn't be able to happen");

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

try {
 FlumeEventPointer ptr = log.put(transactionID, event);
 Preconditions.checkState(putList.offer(ptr), "putList offer failed "
   + channelNameDescriptor);
 queue.addWithoutCommit(ptr, transactionID);

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

Preconditions.checkState(takeList.offer(ptr),
  "takeList offer failed "
    + channelNameDescriptor);

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

/**
 * Returns a new deque of given size containing consecutive
 * Integers 0 ... n - 1.
 */
private static LinkedBlockingDeque<Integer> populatedDeque(int n) {
  LinkedBlockingDeque<Integer> q =
    new LinkedBlockingDeque<Integer>(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.peekFirst());
  assertEquals((Integer) (n - 1), q.peekLast());
  return q;
}

代码示例来源:origin: hector-client/hector

void add(double i) {
 if (intervalupdates.intValue() >= UPDATES_PER_INTERVAL)
  return;
 if (!latencies.offer(i)) {
  latencies.poll();
  latencies.offer(i);
 }
 intervalupdates.getAndIncrement();
}

代码示例来源:origin: camunda/camunda-bpm-platform

boolean added = false;
try {
  while (!added && !queue.offer(entry)) {
    switch (OVERFLOW_DROP_TYPE) {
      case OVERFLOW_DROP_LAST: {
        added = queue.offer(entry,1000,TimeUnit.MILLISECONDS);
        break;

代码示例来源:origin: io.undertow/undertow-core

@Override
  public void close() {
    closed = true;
    recycler.accept(finObj);
    if(!pool.offer(finObj)) {
      consumer.accept(finObj);
    }
  }
};

代码示例来源:origin: tony19/logback-android

@Test
public void offersEventsToTheEndOfTheDeque() throws Exception {
 // given
 appender.start();
 // when
 appender.append("some event");
 // then
 verify(deque).offer(eq("some event"), anyLong(), any(TimeUnit.class));
}

相关文章

微信公众号

最新文章

更多