本文整理了Java中java.util.concurrent.ScheduledThreadPoolExecutor.getQueue()
方法的一些代码示例,展示了ScheduledThreadPoolExecutor.getQueue()
的具体用法。这些代码示例主要来源于Github
/Stackoverflow
/Maven
等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。ScheduledThreadPoolExecutor.getQueue()
方法的具体详情如下:
包路径:java.util.concurrent.ScheduledThreadPoolExecutor
类名称:ScheduledThreadPoolExecutor
方法名:getQueue
[英]Returns the task queue used by this executor. Each element of this queue is a ScheduledFuture, including those tasks submitted using execute which are for scheduling purposes used as the basis of a zero-delay ScheduledFuture. Iteration over this queue is not guaranteed to traverse tasks in the order in which they will execute.
[中]返回此执行器使用的任务队列。该队列的每个元素都是ScheduledFuture,包括使用execute提交的任务,这些任务用于调度目的,用作零延迟ScheduledFuture的基础。该队列上的迭代不保证按照任务执行的顺序遍历任务。
代码示例来源:origin: ehcache/ehcache3
public BlockingQueue<Runnable> getQueue() {
return scheduler.getQueue();
}
代码示例来源:origin: apache/flink
@VisibleForTesting
int getNumTasksScheduled() {
BlockingQueue<?> queue = timerService.getQueue();
if (queue == null) {
return 0;
} else {
return queue.size();
}
}
代码示例来源:origin: apache/geode
/**
* Run all cancelation tasks. Leave the executor's task queue empty.
*/
private void cancelAllQueries(final ScheduledThreadPoolExecutor executor) {
final BlockingQueue<Runnable> expirationTaskQueue = executor.getQueue();
for (final Runnable cancelationTask : expirationTaskQueue) {
if (expirationTaskQueue.remove(cancelationTask)) {
cancelationTask.run();
}
}
}
代码示例来源:origin: stagemonitor/stagemonitor
private void scheduleFlushIfBulkQueueExceedsMaxBatchSize() {
if (bulkQueue.size() > elasticsearchTracingPlugin.getMaxBatchSize() && scheduler.getQueue().isEmpty()) {
synchronized (this) {
if (scheduler.getQueue().isEmpty()) {
scheduler.schedule(spanFlushingRunnable, 0, TimeUnit.SECONDS);
}
}
}
}
代码示例来源:origin: voldemort/voldemort
@JmxGetter(name = "numQueuedTasks",
description = "Returns number of tasks queued for execution")
public long getQueuedTasksCount() {
return this.scheduler.getQueue().size();
}
代码示例来源:origin: apache/geode
private void logDebug(final DefaultQuery query, final String message) {
final Thread queryThread = Thread.currentThread();
logger.debug(
message + " QueryMonitor size is: {}, Thread (id): {}, Query: {}, Thread is : {}",
executor.getQueue().size(), queryThread.getId(), query.getQueryString(),
queryThread);
}
代码示例来源:origin: alibaba/nacos
@Override
public void run() {
int size = ((ScheduledThreadPoolExecutor)notifySingleService.getExecutor()).getQueue().size();
memoryLog.info("notifySingleServiceThreadPool-{}, toNotifyTaskSize={}",
new Object[] {((ScheduledThreadPoolExecutor)notifySingleService.getExecutor()).getClass().getName(),
size});
MetricsMonitor.getNotifyTaskMonitor().set(size);
}
}
代码示例来源:origin: google/guava
public void testListeningDecorator_scheduleFailure() throws Exception {
ScheduledThreadPoolExecutor delegate = new ScheduledThreadPoolExecutor(1);
ListeningScheduledExecutorService service = listeningDecorator(delegate);
RuntimeException ex = new RuntimeException();
ListenableFuture<?> future =
service.schedule(new ThrowingRunnable(0, ex), 1, TimeUnit.MILLISECONDS);
assertExecutionException(future, ex);
assertEquals(0, delegate.getQueue().size());
}
代码示例来源:origin: alibaba/druid
&& createScheduler instanceof ScheduledThreadPoolExecutor) {
ScheduledThreadPoolExecutor executor = (ScheduledThreadPoolExecutor) createScheduler;
if (executor.getQueue().size() > 0) {
createDirect = true;
continue;
代码示例来源:origin: apache/geode
@Before
public void setUp() {
scheduledThreadPoolExecutor = mock(ScheduledThreadPoolExecutor.class);
when(scheduledThreadPoolExecutor.getQueue()).thenReturn(new ArrayBlockingQueue<>(1));
monitor = new QueryMonitor(scheduledThreadPoolExecutor, mock(InternalCache.class),
max_execution_time);
captor = ArgumentCaptor.forClass(Runnable.class);
}
代码示例来源:origin: google/guava
public void testListeningDecorator_schedulePeriodic() throws Exception {
ScheduledThreadPoolExecutor delegate = new ScheduledThreadPoolExecutor(1);
ListeningScheduledExecutorService service = listeningDecorator(delegate);
RuntimeException ex = new RuntimeException();
ListenableFuture<?> future;
ThrowingRunnable runnable = new ThrowingRunnable(5, ex);
future = service.scheduleAtFixedRate(runnable, 1, 1, TimeUnit.MILLISECONDS);
assertExecutionException(future, ex);
assertEquals(5, runnable.count);
assertEquals(0, delegate.getQueue().size());
runnable = new ThrowingRunnable(5, ex);
future = service.scheduleWithFixedDelay(runnable, 1, 1, TimeUnit.MILLISECONDS);
assertExecutionException(future, ex);
assertEquals(5, runnable.count);
assertEquals(0, delegate.getQueue().size());
}
代码示例来源:origin: google/guava
public void testListeningDecorator_scheduleSuccess() throws Exception {
final CountDownLatch completed = new CountDownLatch(1);
ScheduledThreadPoolExecutor delegate =
new ScheduledThreadPoolExecutor(1) {
@Override
protected void afterExecute(Runnable r, Throwable t) {
completed.countDown();
}
};
ListeningScheduledExecutorService service = listeningDecorator(delegate);
ListenableFuture<Integer> future =
service.schedule(Callables.returning(42), 1, TimeUnit.MILLISECONDS);
/*
* Wait not just until the Future's value is set (as in future.get()) but
* also until ListeningScheduledExecutorService's wrapper task is done
* executing listeners, as detected by yielding control to afterExecute.
*/
completed.await();
assertTrue(future.isDone());
assertThat(future.get()).isEqualTo(42);
assertListenerRunImmediately(future);
assertEquals(0, delegate.getQueue().size());
}
代码示例来源:origin: mpusher/mpush
for (int i = 0; i < 1; i++) {
while (service.getQueue().size() > 1000) Thread.sleep(1); // 防止内存溢出
代码示例来源:origin: google/guava
public void testListeningDecorator_cancelled() throws Exception {
ScheduledThreadPoolExecutor delegate = new ScheduledThreadPoolExecutor(1);
BlockingQueue<?> delegateQueue = delegate.getQueue();
ListeningScheduledExecutorService service = listeningDecorator(delegate);
ListenableFuture<?> future;
ScheduledFuture<?> delegateFuture;
Runnable runnable =
new Runnable() {
@Override
public void run() {}
};
future = service.schedule(runnable, 5, TimeUnit.MINUTES);
future.cancel(true);
assertTrue(future.isCancelled());
delegateFuture = (ScheduledFuture<?>) delegateQueue.element();
assertTrue(delegateFuture.isCancelled());
delegateQueue.clear();
future = service.scheduleAtFixedRate(runnable, 5, 5, TimeUnit.MINUTES);
future.cancel(true);
assertTrue(future.isCancelled());
delegateFuture = (ScheduledFuture<?>) delegateQueue.element();
assertTrue(delegateFuture.isCancelled());
delegateQueue.clear();
future = service.scheduleWithFixedDelay(runnable, 5, 5, TimeUnit.MINUTES);
future.cancel(true);
assertTrue(future.isCancelled());
delegateFuture = (ScheduledFuture<?>) delegateQueue.element();
assertTrue(delegateFuture.isCancelled());
}
代码示例来源:origin: i2p/i2p.i2p
private String debug() {
return
" Pool: " + _name +
" Active: " + _executor.getActiveCount() + '/' + _executor.getPoolSize() +
" Completed: " + _executor.getCompletedTaskCount() +
" Queued: " + _executor.getQueue().size();
}
}
代码示例来源:origin: org.apache.commons/commons-pool2
/**
* Remove the specified eviction task from the timer.
*
* @param task Task to be cancelled
* @param timeout If the associated executor is no longer required, how
* long should this thread wait for the executor to
* terminate?
* @param unit The units for the specified timeout
*/
static synchronized void cancel(
final BaseGenericObjectPool<?>.Evictor task, final long timeout, final TimeUnit unit) {
task.cancel();
if (executor.getQueue().size() == 0) {
executor.shutdown();
try {
executor.awaitTermination(timeout, unit);
} catch (final InterruptedException e) {
// Swallow
// Significant API changes would be required to propagate this
}
executor.setCorePoolSize(0);
executor = null;
}
}
代码示例来源:origin: i2p/i2p.i2p
/** warning - slow */
private String debug() {
_executor.purge(); // Remove cancelled tasks from the queue so we get a good queue size stat
return
" Pool: " + _name +
" Active: " + _executor.getActiveCount() + '/' + _executor.getPoolSize() +
" Completed: " + _executor.getCompletedTaskCount() +
" Queued: " + _executor.getQueue().size();
}
代码示例来源:origin: HubSpot/Singularity
private void reEnqueue() {
LOG.debug("Re-enqueueing request for {}, waiting {}, ({} active, {} queue, {} max), total time {}", artifactDownloadRequest.getTargetDirectory(),
JavaUtils.durationFromMillis(configuration.getMillisToWaitForReEnqueue()),
downloadJoinerService.getActiveCount(),
downloadJoinerService.getQueue().size(),
configuration.getNumEnqueueThreads(),
JavaUtils.duration(start));
downloadJoinerService.schedule(this, configuration.getMillisToWaitForReEnqueue(), TimeUnit.MILLISECONDS);
}
代码示例来源:origin: com.alibaba/druid
&& createScheduler instanceof ScheduledThreadPoolExecutor) {
ScheduledThreadPoolExecutor executor = (ScheduledThreadPoolExecutor) createScheduler;
if (executor.getQueue().size() > 0) {
createDirect = true;
continue;
代码示例来源:origin: net.sf.ehcache/ehcache
this.diskQueue = diskWriter.getQueue();
this.eventService = cache.getCacheEventNotificationService();
this.queueCapacity = cache.getCacheConfiguration().getDiskSpoolBufferSizeMB() * MEGABYTE;
内容来源于网络,如有侵权,请联系作者删除!