Java 类java.util.concurrent.ScheduledThreadPoolExecutor 实例源码
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* get of element of invokeAll(c) throws exception on failed task
*/
public void testTimedInvokeAll4() throws Exception {
final ExecutorService e = new ScheduledThreadPoolExecutor(2);
try (PoolCleaner cleaner = cleaner(e)) {
List<Callable<String>> l = new ArrayList<>();
l.add(new NPETask());
List<Future<String>> futures =
e.invokeAll(l, LONG_DELAY_MS, MILLISECONDS);
assertEquals(1, futures.size());
try {
futures.get(0).get();
shouldThrow();
} catch (ExecutionException success) {
assertTrue(success.getCause() instanceof NullPointerException);
}
}
}
项目:jdk8u-jdk
文件:RuntimeUtil.java
private RuntimeUtil() {
scheduler = new ScheduledThreadPoolExecutor(
schedulerThreads,
new ThreadFactory() {
private final AtomicInteger count = new AtomicInteger(0);
public Thread newThread(Runnable runnable) {
try {
return AccessController.doPrivileged(
new NewThreadAction(runnable,
"Scheduler(" + count.getAndIncrement() + ")",
true));
} catch (Throwable t) {
runtimeLog.log(Level.WARNING,
"scheduler thread factory throws", t);
return null;
}
}
});
/*
* We would like to allow the scheduler's threads to terminate
* if possible, but a bug in DelayQueue.poll can cause code
* like this to result in a busy loop:
*/
// stpe.setKeepAliveTime(10, TimeUnit.MINUTES);
// stpe.allowCoreThreadTimeOut(true);
}
项目:TakinRPC
文件:RemotingNettyClient.java
public void start() {
bootstrap.group(group).channel(NioSocketChannel.class);
bootstrap.option(ChannelOption.TCP_NODELAY, true);
bootstrap.handler(new ChannelInitializer<SocketChannel>() {
@Override
public void initChannel(SocketChannel ch) throws Exception {
// ch.pipeline().addLast(new IdleStateHandler(1, 1, 5));
ch.pipeline().addLast(new KyroMsgDecoder());
ch.pipeline().addLast(new KyroMsgEncoder());
ch.pipeline().addLast(new ClientHandler());
}
});
new ScheduledThreadPoolExecutor(1).scheduleAtFixedRate(new Runnable() {
@Override
public void run() {
scanResponseTable(3000);
}
}, 1000, 1000, TimeUnit.MILLISECONDS);
}
项目:ditb
文件:Canary.java
public static void main(String[] args) throws Exception {
final Configuration conf = HBaseConfiguration.create();
final ChoreService choreService = new ChoreService("CANARY_TOOL");
final ScheduledChore authChore = AuthUtil.getAuthChore(conf);
if (authChore != null) {
choreService.scheduleChore(authChore);
}
// loading the generic options to conf
new GenericOptionsParser(conf, args);
int numThreads = conf.getInt("hbase.canary.threads.num", MAX_THREADS_NUM);
LOG.info("Number of exection threads " + numThreads);
ExecutorService executor = new ScheduledThreadPoolExecutor(numThreads);
Class<? extends Sink> sinkClass =
conf.getClass("hbase.canary.sink.class", RegionServerStdOutSink.class, Sink.class);
Sink sink = ReflectionUtils.newInstance(sinkClass);
int exitCode = ToolRunner.run(conf, new Canary(executor, sink), args);
choreService.shutdown();
executor.shutdown();
System.exit(exitCode);
}
项目:think-in-java
文件:SimpleUsage.java
public static void main(String[] args)
{
ScheduledThreadPoolExecutor scheduler = new ScheduledThreadPoolExecutor(
10);
Runnable event = new Runnable()
{
@Override
public void run()
{
System.out.println("吃饭,睡觉,打豆豆");
}
};
scheduler.schedule(event, 1, TimeUnit.SECONDS);
scheduler.scheduleAtFixedRate(event, 5, 1, TimeUnit.SECONDS);
}
项目:GoPush
文件:NodeServerInfoWatchdog.java
@PostConstruct
public void init() {
scheduledExecutorService = new ScheduledThreadPoolExecutor(1,
new BasicThreadFactory.Builder().namingPattern("SendNodeServerInfo-schedule-pool-%d").daemon(true).build());
scheduledExecutorService.scheduleAtFixedRate(() ->
{
//将负载加载到ZK中
if (!CollectionUtils.isEmpty(dataCenterChannelStore.getAllChannels())) {
dataCenterChannelStore.getAllChannels().stream().forEach(e -> {
log.info("channel id:{}, {}", e.id(), e);
});
}
applicationEventPublisher.publishEvent(
NodeServerInfoEvent.builder()
.name(goPushNodeServerConfig.getName())
.nodeServerInfo(watch())
.build());
// 写入zk 其实不需要发送 NodeInfoReq
nodeSender.send(NodeInfoReq.builder().build());
}
, delay, delay, TimeUnit.MILLISECONDS);
}
项目:AeroStory
文件:TimerManager.java
public void start() {
if (ses != null && !ses.isShutdown() && !ses.isTerminated()) {
return;
}
ScheduledThreadPoolExecutor stpe = new ScheduledThreadPoolExecutor(4, new ThreadFactory() {
private final AtomicInteger threadNumber = new AtomicInteger(1);
@Override
public Thread newThread(Runnable r) {
Thread t = new Thread(r);
t.setName("TimerManager-Worker-" + threadNumber.getAndIncrement());
return t;
}
});
//this is a no-no, it actually does nothing..then why the fuck are you doing it?
stpe.setContinueExistingPeriodicTasksAfterShutdownPolicy(false);
ses = stpe;
}
项目:guava-mock
文件:MoreExecutorsTest.java
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());
}
项目:otter-G
文件:TableStatServiceImpl.java
public void afterPropertiesSet() throws Exception {
scheduler = new ScheduledThreadPoolExecutor(1, new NamedThreadFactory("Otter-Statistics-Table"),
new ThreadPoolExecutor.CallerRunsPolicy());
if (statUnit > 0) {
scheduler.scheduleAtFixedRate(new Runnable() {
public void run() {
try {
flushBehaviorHistory();
} catch (Exception e) {
logger.error("flush delay stat failed!", e);
}
}
}, statUnit, statUnit, TimeUnit.MILLISECONDS);
}
}
项目:openjdk-jdk10
文件:RuntimeUtil.java
private RuntimeUtil() {
scheduler = new ScheduledThreadPoolExecutor(
schedulerThreads,
new ThreadFactory() {
private final AtomicInteger count = new AtomicInteger(0);
public Thread newThread(Runnable runnable) {
try {
return AccessController.doPrivileged(
new NewThreadAction(runnable,
"Scheduler(" + count.getAndIncrement() + ")",
true));
} catch (Throwable t) {
runtimeLog.log(Level.WARNING,
"scheduler thread factory throws", t);
return null;
}
}
});
/*
* We would like to allow the scheduler's threads to terminate
* if possible, but a bug in DelayQueue.poll can cause code
* like this to result in a busy loop:
*/
// stpe.setKeepAliveTime(10, TimeUnit.MINUTES);
// stpe.allowCoreThreadTimeOut(true);
}
项目:ditb
文件:ChoreService.java
/**
* @param coreThreadPoolPrefix Prefix that will be applied to the Thread name of all threads
* spawned by this service
* @param corePoolSize The initial size to set the core pool of the ScheduledThreadPoolExecutor
* to during initialization. The default size is 1, but specifying a larger size may be
* beneficial if you know that 1 thread will not be enough.
*/
public ChoreService(final String coreThreadPoolPrefix, int corePoolSize, boolean jitter) {
this.coreThreadPoolPrefix = coreThreadPoolPrefix;
if (corePoolSize < MIN_CORE_POOL_SIZE) {
corePoolSize = MIN_CORE_POOL_SIZE;
}
final ThreadFactory threadFactory = new ChoreServiceThreadFactory(coreThreadPoolPrefix);
if (jitter) {
scheduler = new JitterScheduledThreadPoolExecutorImpl(corePoolSize, threadFactory, 0.1);
} else {
scheduler = new ScheduledThreadPoolExecutor(corePoolSize, threadFactory);
}
scheduler.setRemoveOnCancelPolicy(true);
scheduledChores = new HashMap<ScheduledChore, ScheduledFuture<?>>();
choresMissingStartTime = new HashMap<ScheduledChore, Boolean>();
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* purge eventually removes cancelled tasks from the queue
*/
public void testPurge() throws InterruptedException {
final ScheduledFuture[] tasks = new ScheduledFuture[5];
final Runnable releaser = new Runnable() { public void run() {
for (ScheduledFuture task : tasks)
if (task != null) task.cancel(true); }};
final ScheduledThreadPoolExecutor p = new ScheduledThreadPoolExecutor(1);
try (PoolCleaner cleaner = cleaner(p, releaser)) {
for (int i = 0; i < tasks.length; i++)
tasks[i] = p.schedule(new SmallPossiblyInterruptedRunnable(),
LONG_DELAY_MS, MILLISECONDS);
int max = tasks.length;
if (tasks[4].cancel(true)) --max;
if (tasks[3].cancel(true)) --max;
// There must eventually be an interference-free point at
// which purge will not fail. (At worst, when queue is empty.)
long startTime = System.nanoTime();
do {
p.purge();
long count = p.getTaskCount();
if (count == max)
return;
} while (millisElapsedSince(startTime) < LONG_DELAY_MS);
fail("Purge failed to remove cancelled tasks");
}
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* scheduleAtFixedRate executes series of tasks at given rate.
* Eventually, it must hold that:
* cycles - 1 <= elapsedMillis/delay < cycles
*/
public void testFixedRateSequence() throws InterruptedException {
final ScheduledThreadPoolExecutor p = new ScheduledThreadPoolExecutor(1);
try (PoolCleaner cleaner = cleaner(p)) {
for (int delay = 1; delay <= LONG_DELAY_MS; delay *= 3) {
final long startTime = System.nanoTime();
final int cycles = 8;
final CountDownLatch done = new CountDownLatch(cycles);
final Runnable task = new CheckedRunnable() {
public void realRun() { done.countDown(); }};
final ScheduledFuture periodicTask =
p.scheduleAtFixedRate(task, 0, delay, MILLISECONDS);
final int totalDelayMillis = (cycles - 1) * delay;
await(done, totalDelayMillis + LONG_DELAY_MS);
periodicTask.cancel(true);
final long elapsedMillis = millisElapsedSince(startTime);
assertTrue(elapsedMillis >= totalDelayMillis);
if (elapsedMillis <= cycles * delay)
return;
// else retry with longer delay
}
fail("unexpected execution rate");
}
}
项目:chat-sdk-android-push-firebase
文件:ChatSDKAbstractConversationsFragment.java
private ChatSDKAbstractConversationsFragmentChatSDKThreadPool(){
if (NUMBER_OF_CORES <= 0)
NUMBER_OF_CORES = 2;
// Creates a thread pool manager
threadPool = new ThreadPoolExecutor(
NUMBER_OF_CORES, // Initial pool size
NUMBER_OF_CORES, // Max pool size
KEEP_ALIVE_TIME,
KEEP_ALIVE_TIME_UNIT,
workQueue);
scheduledThreadPoolExecutor = new ScheduledThreadPoolExecutor(NUMBER_OF_CORES);
}
项目:buffer-slayer
文件:AsyncReporter.java
@Override
protected ScheduledExecutorService scheduler() {
if (this.scheduler == null) {
synchronized (this) {
if (this.scheduler == null) {
ThreadFactory timerFactory = new ThreadFactoryBuilder()
.setNameFormat("AsyncReporter-" + id + "-timer-%d")
.setDaemon(true)
.build();
ScheduledThreadPoolExecutor timerPool = new ScheduledThreadPoolExecutor(timerThreads, timerFactory);
timerPool.setRemoveOnCancelPolicy(true);
this.scheduler = timerPool;
return timerPool;
}
}
}
return scheduler;
}
项目:openjdk-jdk10
文件:DelayOverflow.java
void scheduleAtTheEndOfTime(ScheduledThreadPoolExecutor pool,
Runnable r, int how) {
switch (how) {
case 0:
pool.schedule(r, Long.MAX_VALUE, MILLISECONDS);
break;
case 1:
pool.schedule(Executors.callable(r), Long.MAX_VALUE, DAYS);
break;
case 2:
pool.scheduleWithFixedDelay(r, Long.MAX_VALUE, 1000, NANOSECONDS);
break;
case 3:
pool.scheduleAtFixedRate(r, Long.MAX_VALUE, 1000, MILLISECONDS);
break;
default:
fail(String.valueOf(how));
}
}
项目:aws-sdk-java-v2
文件:MockedClientTests.java
@Test
public void clientExecutionTimeoutEnabled_RequestCompletesWithinTimeout_TaskCanceled() throws Exception {
AmazonHttpClient httpClient = HttpTestUtils.testClientBuilder()
.httpClient(sdkHttpClient)
.retryPolicy(RetryPolicy.NONE)
.build();
try {
ClientExecutionAndRequestTimerTestUtils
.execute(httpClient, ClientExecutionAndRequestTimerTestUtils.createMockGetRequest());
fail("Exception expected");
} catch (SdkClientException e) {
NullResponseHandler.assertIsUnmarshallingException(e);
}
ScheduledThreadPoolExecutor requestTimerExecutor = httpClient.getClientExecutionTimer().getExecutor();
ClientExecutionAndRequestTimerTestUtils.assertTimerNeverTriggered(requestTimerExecutor);
ClientExecutionAndRequestTimerTestUtils.assertCanceledTasksRemoved(requestTimerExecutor);
// Core threads should be spun up on demand. Since only one task was submitted only one
// thread should exist
assertEquals(1, requestTimerExecutor.getPoolSize());
ClientExecutionAndRequestTimerTestUtils.assertCoreThreadsShutDownAfterBeingIdle(requestTimerExecutor);
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* scheduleAtFixedRate executes runnable after given initial delay
*/
public void testSchedule4() throws Exception {
final ScheduledThreadPoolExecutor p = new ScheduledThreadPoolExecutor(1);
try (PoolCleaner cleaner = cleaner(p)) {
final long startTime = System.nanoTime();
final CountDownLatch done = new CountDownLatch(1);
Runnable task = new CheckedRunnable() {
public void realRun() {
done.countDown();
assertTrue(millisElapsedSince(startTime) >= timeoutMillis());
}};
ScheduledFuture f =
p.scheduleAtFixedRate(task, timeoutMillis(),
LONG_DELAY_MS, MILLISECONDS);
await(done);
assertTrue(millisElapsedSince(startTime) >= timeoutMillis());
f.cancel(true);
}
}
项目:AlphaLibary
文件:ServerConnector.java
public ServerConnector(int ownPort, String host, int port) {
if (ownPort == port) {
System.out.println("Cannot connect to own server!");
return;
}
server = new EchoServer(ownPort);
client = new EchoClient(host, port);
ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(1);
executor.execute(() -> {
try {
server.start();
} catch (Exception e) {
e.printStackTrace();
}
});
}
项目:boohee_v5.6
文件:NewThreadWorker.java
static void purgeExecutors() {
try {
Iterator<ScheduledThreadPoolExecutor> it = EXECUTORS.keySet().iterator();
while (it.hasNext()) {
ScheduledThreadPoolExecutor exec = (ScheduledThreadPoolExecutor) it.next();
if (exec.isShutdown()) {
it.remove();
} else {
exec.purge();
}
}
} catch (Throwable t) {
Exceptions.throwIfFatal(t);
RxJavaPlugins.getInstance().getErrorHandler().handleError(t);
}
}
项目:hadoop
文件:ResourceLocalizationService.java
public ResourceLocalizationService(Dispatcher dispatcher,
ContainerExecutor exec, DeletionService delService,
LocalDirsHandlerService dirsHandler, Context context) {
super(ResourceLocalizationService.class.getName());
this.exec = exec;
this.dispatcher = dispatcher;
this.delService = delService;
this.dirsHandler = dirsHandler;
this.cacheCleanup = new ScheduledThreadPoolExecutor(1,
new ThreadFactoryBuilder()
.setNameFormat("ResourceLocalizationService Cache Cleanup")
.build());
this.stateStore = context.getNMStateStore();
this.nmContext = context;
}
项目:util4j
文件:TestAssistTimedMap.java
public void runTest()
{
ScheduledExecutorService s=new ScheduledThreadPoolExecutor(2, new NamedThreadFactory("Scheduled"));
s.scheduleAtFixedRate(map.getCleanTask(),1, 1, TimeUnit.SECONDS);
ExecutorService es=Executors.newCachedThreadPool();
es.execute(this::writeTest);
es.execute(this::writeTest);
es.execute(this::writeTest);
es.execute(this::writeTest);
es.execute(this::readTest);
es.execute(this::readTest);
es.execute(this::readTest);
es.execute(this::readTest);
es.execute(this::readTest);
es.execute(this::readTest);
s.scheduleAtFixedRate(this::printInfo,5, 5, TimeUnit.SECONDS);
}
项目:util4j
文件:TestTimedMap.java
public void runTest()
{
ScheduledExecutorService s=new ScheduledThreadPoolExecutor(2, new NamedThreadFactory("Scheduled"));
s.scheduleAtFixedRate(map.getCleanTask(),1, 1, TimeUnit.SECONDS);
ExecutorService es=Executors.newCachedThreadPool();
es.execute(this::writeTest);
es.execute(this::writeTest);
es.execute(this::writeTest);
es.execute(this::writeTest);
es.execute(this::readTest);
es.execute(this::readTest);
es.execute(this::readTest);
es.execute(this::readTest);
es.execute(this::readTest);
es.execute(this::readTest);
s.scheduleAtFixedRate(this::printInfo,5, 5, TimeUnit.SECONDS);
}
项目:happylifeplat-transaction
文件:TxManagerLocator.java
private TxManagerLocator() {
List<TxManagerServiceDTO> initial = Lists.newArrayList();
mConfigservices = new AtomicReference<>(initial);
mResponsetype = new TypeToken<List<TxManagerServiceDTO>>() {
}.getType();
this.mExecutorservice = new ScheduledThreadPoolExecutor(1,
TxTransactionThreadFactory.create("TxManagerLocator", true));
}
项目:happylifeplat-transaction
文件:TransactionThreadPool.java
@PostConstruct
public void init() {
scheduledExecutorService = new ScheduledThreadPoolExecutor(txConfig.getTransactionThreadMax(),
TxTransactionThreadFactory.create(THREAD_FACTORY_NAME, false));
fixExecutorService = new ThreadPoolExecutor(txConfig.getTransactionThreadMax(), txConfig.getTransactionThreadMax(), 0, TimeUnit.MILLISECONDS,
createBlockingQueue(),
TxTransactionThreadFactory.create(THREAD_FACTORY_NAME, false), createPolicy());
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* getTaskCount increases, but doesn't overestimate, when tasks
* submitted
*/
public void testGetTaskCount() throws InterruptedException {
final int TASKS = 3;
final CountDownLatch done = new CountDownLatch(1);
final ThreadPoolExecutor p = new ScheduledThreadPoolExecutor(1);
try (PoolCleaner cleaner = cleaner(p, done)) {
final CountDownLatch threadStarted = new CountDownLatch(1);
assertEquals(0, p.getTaskCount());
assertEquals(0, p.getCompletedTaskCount());
p.execute(new CheckedRunnable() {
public void realRun() throws InterruptedException {
threadStarted.countDown();
await(done);
}});
await(threadStarted);
assertEquals(1, p.getTaskCount());
assertEquals(0, p.getCompletedTaskCount());
for (int i = 0; i < TASKS; i++) {
assertEquals(1 + i, p.getTaskCount());
p.execute(new CheckedRunnable() {
public void realRun() throws InterruptedException {
threadStarted.countDown();
assertEquals(1 + TASKS, p.getTaskCount());
await(done);
}});
}
assertEquals(1 + TASKS, p.getTaskCount());
assertEquals(0, p.getCompletedTaskCount());
}
assertEquals(1 + TASKS, p.getTaskCount());
assertEquals(1 + TASKS, p.getCompletedTaskCount());
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* Submitting null tasks throws NullPointerException
*/
public void testNullTaskSubmission() {
final ScheduledThreadPoolExecutor p = new ScheduledThreadPoolExecutor(1);
try (PoolCleaner cleaner = cleaner(p)) {
assertNullTaskSubmissionThrowsNullPointerException(p);
}
}
项目:aws-sdk-java-v2
文件:ClientExecutionAndRequestTimerTestUtils.java
/**
* Waits until a little after the thread pools keep alive time and then asserts that all thre
*
* @param timerExecutor Executor used by timer implementation
*/
public static void assertCoreThreadsShutDownAfterBeingIdle(ScheduledThreadPoolExecutor timerExecutor) {
try {
Thread.sleep(timerExecutor.getKeepAliveTime(TimeUnit.MILLISECONDS) + 1000);
} catch (InterruptedException ignored) {
// Ignored.
}
assertEquals(0, timerExecutor.getPoolSize());
}
项目:otter-G
文件:StatisticsClientServiceImpl.java
public void afterPropertiesSet() throws Exception {
scheduler = new ScheduledThreadPoolExecutor(DEFAULT_POOL, new NamedThreadFactory("Otter-Statistics-Client"),
new ThreadPoolExecutor.CallerRunsPolicy());
scheduler.submit(new Runnable() {
public void run() {
doSendDelayCountEvent();
}
});
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* timed invokeAll(null) throws NPE
*/
public void testTimedInvokeAll1() throws Exception {
final ExecutorService e = new ScheduledThreadPoolExecutor(2);
try (PoolCleaner cleaner = cleaner(e)) {
try {
e.invokeAll(null, randomTimeout(), randomTimeUnit());
shouldThrow();
} catch (NullPointerException success) {}
}
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* timed invokeAll(,,null) throws NPE
*/
public void testTimedInvokeAllNullTimeUnit() throws Exception {
final ExecutorService e = new ScheduledThreadPoolExecutor(2);
try (PoolCleaner cleaner = cleaner(e)) {
List<Callable<String>> l = new ArrayList<>();
l.add(new StringTask());
try {
e.invokeAll(l, randomTimeout(), null);
shouldThrow();
} catch (NullPointerException success) {}
}
}
项目:sstore-soft
文件:ThreadUtil.java
/**
* Have shutdown actually means shutdown. Tasks that need to complete should use
* futures.
*/
public static ScheduledThreadPoolExecutor getScheduledThreadPoolExecutor(String name, UncaughtExceptionHandler handler, int poolSize, int stackSize) {
// HACK: ScheduledThreadPoolExecutor won't let use the handler so
// if we're using ExceptionHandlingRunnable then we'll be able to
// pick up the exceptions
Thread.setDefaultUncaughtExceptionHandler(handler);
ThreadFactory factory = getThreadFactory(name, handler);
ScheduledThreadPoolExecutor executor = new ScheduledThreadPoolExecutor(poolSize, factory);
executor.setContinueExistingPeriodicTasksAfterShutdownPolicy(false);
executor.setExecuteExistingDelayedTasksAfterShutdownPolicy(false);
return executor;
}
项目:monarch
文件:CacheClientNotifier.java
public void addToBlacklistedClient(ClientProxyMembershipID proxyID) {
blackListedClients.add(proxyID);
// ensure that cache and distributed system state are current and open
this.getCache();
new ScheduledThreadPoolExecutor(1).schedule(new ExpireBlackListTask(proxyID), 120,
TimeUnit.SECONDS);
}
项目:ditb
文件:Canary.java
/**
* Canary entry point for specified table with task type(read/write)
* @throws Exception
*/
public static void sniff(final Admin admin, TableName tableName, TaskType taskType)
throws Exception {
List<Future<Void>> taskFutures =
Canary.sniff(admin, new StdOutSink(), tableName.getNameAsString(),
new ScheduledThreadPoolExecutor(1), taskType);
for (Future<Void> future : taskFutures) {
future.get();
}
}
项目:etomica
文件:DataStreamWebsocket.java
@Inject
public DataStreamWebsocket(SimulationStore simStore, DataStreamStore dataStore, ObjectMapper mapper, ScheduledThreadPoolExecutor executor) {
this.simStore = simStore;
this.dataStore = dataStore;
this.mapper = mapper;
this.executor = executor;
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* invokeAll(null) throws NPE
*/
public void testInvokeAll1() throws Exception {
final ExecutorService e = new ScheduledThreadPoolExecutor(2);
try (PoolCleaner cleaner = cleaner(e)) {
try {
e.invokeAll(null);
shouldThrow();
} catch (NullPointerException success) {}
}
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* timed invokeAll(c) throws NPE if c has null elements
*/
public void testTimedInvokeAll3() throws Exception {
final ExecutorService e = new ScheduledThreadPoolExecutor(2);
try (PoolCleaner cleaner = cleaner(e)) {
List<Callable<String>> l = new ArrayList<>();
l.add(new StringTask());
l.add(null);
try {
e.invokeAll(l, randomTimeout(), randomTimeUnit());
shouldThrow();
} catch (NullPointerException success) {}
}
}
项目:openjdk-jdk10
文件:ScheduledExecutorTest.java
/**
* completed submit of runnable returns successfully
*/
public void testSubmitRunnable() throws Exception {
final ExecutorService e = new ScheduledThreadPoolExecutor(2);
try (PoolCleaner cleaner = cleaner(e)) {
Future<?> future = e.submit(new NoOpRunnable());
future.get();
assertTrue(future.isDone());
}
}
项目:boohee_v5.6
文件:NewThreadWorker.java
public NewThreadWorker(ThreadFactory threadFactory) {
ScheduledExecutorService exec = Executors.newScheduledThreadPool(1, threadFactory);
if (!tryEnableCancelPolicy(exec) && (exec instanceof ScheduledThreadPoolExecutor)) {
registerExecutor((ScheduledThreadPoolExecutor) exec);
}
this.schedulersHook = RxJavaPlugins.getInstance().getSchedulersHook();
this.executor = exec;
}
项目:rocketmq-rocketmq-all-4.1.0-incubating
文件:MQPullConsumerScheduleService.java
public void start() throws MQClientException {
final String group = this.defaultMQPullConsumer.getConsumerGroup();
this.scheduledThreadPoolExecutor = new ScheduledThreadPoolExecutor(
this.pullThreadNums,
new ThreadFactoryImpl("PullMsgThread-" + group)
);
this.defaultMQPullConsumer.setMessageQueueListener(this.messageQueueListener);
this.defaultMQPullConsumer.start();
log.info("MQPullConsumerScheduleService start OK, {} {}",
this.defaultMQPullConsumer.getConsumerGroup(), this.callbackTable);
}