ch.qos.logback.core.AsyncAppenderBase.getNumberOfElementsInQueue()方法的使用及代码示例

x33g5p2x  于2022-01-16 转载在 其他  
字(2.0k)|赞(0)|评价(0)|浏览(90)

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

AsyncAppenderBase.getNumberOfElementsInQueue介绍

[英]Returns the number of elements currently in the blocking queue.
[中]返回阻塞队列中当前的元素数。

代码示例

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

private void flushAppender(AsyncAppenderBase<?> appender) throws InterruptedException {
  int timeWaiting = 0;
  while (timeWaiting < appender.getMaxFlushTime() && appender.getNumberOfElementsInQueue() > 0) {
    Thread.sleep(100);
    timeWaiting += 100;
  }
  if (appender.getNumberOfElementsInQueue() > 0) {
    // It may seem odd to log when we're trying to flush a logger that
    // isn't flushing, but the same warning is issued inside
    // appender.stop() if the appender isn't able to flush.
    appender.addWarn(appender.getNumberOfElementsInQueue() + " events may be discarded");
  }
}

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

@Override
public int getQueueSize()
{
  return asyncAppender.getNumberOfElementsInQueue();
}

代码示例来源:origin: io.airlift/http-server

public int getQueueSize()
{
  return asyncAppender.getNumberOfElementsInQueue();
}

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

@SuppressWarnings("deprecation")
@Test
public void workerThreadFlushesOnStop() {
 int loopLen = 5;
 int maxRuntime = (loopLen + 1) * Math.max(1000, delayingListAppender.delay);
 ListAppender<Integer> la = delayingListAppender;
 asyncAppenderBase.addAppender(la);
 asyncAppenderBase.setDiscardingThreshold(0);
 asyncAppenderBase.setMaxFlushTime(maxRuntime);
 asyncAppenderBase.start();
 asyncAppenderBase.worker.suspend();
 for (int i = 0; i < loopLen; i++) {
  asyncAppenderBase.doAppend(i);
 }
 assertEquals(loopLen, asyncAppenderBase.getNumberOfElementsInQueue());
 assertEquals(0, la.list.size());
 asyncAppenderBase.worker.resume();
 asyncAppenderBase.stop();
 assertEquals(0, asyncAppenderBase.getNumberOfElementsInQueue());
 verify(la, loopLen);
}

相关文章