本文整理了Java中java.util.concurrent.LinkedBlockingDeque.offer()
方法的一些代码示例,展示了LinkedBlockingDeque.offer()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。LinkedBlockingDeque.offer()
方法的具体详情如下:
包路径:java.util.concurrent.LinkedBlockingDeque
类名称: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));
}
内容来源于网络,如有侵权,请联系作者删除!