Example usage for com.google.common.util.concurrent ThreadFactoryBuilder ThreadFactoryBuilder

List of usage examples for com.google.common.util.concurrent ThreadFactoryBuilder ThreadFactoryBuilder

Introduction

In this page you can find the example usage for com.google.common.util.concurrent ThreadFactoryBuilder ThreadFactoryBuilder.

Prototype

public ThreadFactoryBuilder() 

Source Link

Document

Creates a new ThreadFactory builder.

Usage

From source file:org.excalibur.core.workflow.flow.WorkflowBuilder.java

public Workflow build() {
    checkNotNull(description_);//from w w w. ja v a  2  s . c om

    if (workflowEventBus_ == null) {
        ThreadFactory threadFactory = new ThreadFactoryBuilder()
                //                    .setDaemon(true)
                .setNameFormat("event-bus-for-workflow-" + description_.getName() + "-%d").build();
        workflowEventBus_ = new AsyncEventBus(DynamicExecutors.newScalingThreadPool(
                description_.getActivitesMap().size(), 100, 3, TimeUnit.MINUTES, threadFactory));
    }

    Map<Integer, Activity> activities = new HashMap<Integer, Activity>();
    createActivitiesFromWorkflowDescription(description_.getActivitesMap(), activities);
    Activity first = activities.get(description_.getStartActivityId());

    checkState(first.isStart());

    return new WorkflowImpl(description_, first);
}

From source file:org.apache.s4.core.staging.LoadSheddingStreamExecutorServiceFactory.java

@Override
public ExecutorService create(int parallelism, final String name, final ClassLoader classLoader) {
    ThreadFactory threadFactory = new ThreadFactoryBuilder().setDaemon(true)
            .setNameFormat("stream-" + name + "-%d").setThreadFactory(new ThreadFactory() {

                @Override/*from   ww w  .ja  v a 2s  .c  o  m*/
                public Thread newThread(Runnable r) {
                    Thread t = new Thread(r);
                    t.setContextClassLoader(classLoader);
                    return t;
                }
            }).build();
    RejectedExecutionHandler rejectedExecutionHandler = new RejectedExecutionHandler() {

        @Override
        public void rejectedExecution(Runnable r, ThreadPoolExecutor executor) {
            metrics.droppedEvent(name);
        }
    };
    ThreadPoolExecutor tpe = new ThreadPoolExecutor(parallelism, parallelism, 60, TimeUnit.SECONDS,
            new ArrayBlockingQueue<Runnable>(workQueueSize), threadFactory, rejectedExecutionHandler);
    tpe.allowCoreThreadTimeOut(true);
    return tpe;
}

From source file:org.graylog2.inputs.gelf.GELFTCPInput.java

private void spinUp() {
    final ExecutorService bossThreadPool = Executors
            .newCachedThreadPool(new ThreadFactoryBuilder().setNameFormat("input-gelftcp-boss-%d").build());

    final ExecutorService workerThreadPool = Executors
            .newCachedThreadPool(new ThreadFactoryBuilder().setNameFormat("input-gelftcp-worker-%d").build());

    ServerBootstrap tcpBootstrap = new ServerBootstrap(
            new NioServerSocketChannelFactory(bossThreadPool, workerThreadPool));

    tcpBootstrap.setPipelineFactory(new GELFTCPPipelineFactory(this.graylogServer));

    try {//from   w ww. ja  v  a  2s .  c om
        tcpBootstrap.bind(socketAddress);
        LOG.info("Started TCP GELF server on {}", socketAddress);
    } catch (ChannelException e) {
        LOG.error("Could not bind TCP GELF server to address " + socketAddress, e);
    }
}

From source file:org.jmangos.commons.network.factory.BasicPipelineFactory.java

/**
 * Instantiates a new basic pipeline factory.
 *//*from   w ww  . ja  va  2  s .  co  m*/
public BasicPipelineFactory() {
    this.executorHandler = new ExecutionHandler(new OrderedMemoryAwareThreadPoolExecutor(THREADS_MAX,
            MEMORY_PER_CHANNEL, TOTAL_MEMORY, TIMEOUT, TimeUnit.MILLISECONDS,
            new ThreadFactoryBuilder().setNameFormat("JMaNGOS-netty-pool-%d").build()));
}

From source file:io.joynr.messaging.MessagingModule.java

@Provides
@Named(MessageScheduler.SCHEDULEDTHREADPOOL)
ScheduledExecutorService provideMessageSchedulerThreadPoolExecutor(
        @Named(ConfigurableMessagingSettings.PROPERTY_MESSAGING_MAXIMUM_PARALLEL_SENDS) int maximumParallelSends) {
    ThreadFactory schedulerNamedThreadFactory = new ThreadFactoryBuilder()
            .setNameFormat("joynr.MessageScheduler-scheduler-%d").build();
    ScheduledThreadPoolExecutor scheduler = new ScheduledThreadPoolExecutor(maximumParallelSends,
            schedulerNamedThreadFactory);
    scheduler.setKeepAliveTime(100, TimeUnit.SECONDS);
    scheduler.allowCoreThreadTimeOut(true);
    return scheduler;
}

From source file:org.graylog2.inputs.syslog.SyslogTCPInput.java

private void spinUp() {
    final ExecutorService bossThreadPool = Executors
            .newCachedThreadPool(new ThreadFactoryBuilder().setNameFormat("input-syslogtcp-boss-%d").build());

    final ExecutorService workerThreadPool = Executors
            .newCachedThreadPool(new ThreadFactoryBuilder().setNameFormat("input-syslogtcp-worker-%d").build());

    ServerBootstrap tcpBootstrap = new ServerBootstrap(
            new NioServerSocketChannelFactory(bossThreadPool, workerThreadPool));

    tcpBootstrap.setPipelineFactory(new SyslogTCPPipelineFactory(this.graylogServer));

    try {/*from   w ww .j a  va  2 s  .c  o  m*/
        tcpBootstrap.bind(socketAddress);
        LOG.info("Started TCP syslog server on {}", socketAddress);
    } catch (ChannelException e) {
        LOG.error("Could not bind TCP syslog server to address " + socketAddress, e);
    }
}

From source file:org.openecomp.sdc.be.components.distribution.engine.NotificationExecutorService.java

public ExecutorService createExcecutorService(
        DistributionNotificationTopicConfig distributionNotificationTopic) {

    Integer minThreadPoolSize = distributionNotificationTopic.getMinThreadPoolSize();
    if (minThreadPoolSize == null) {
        minThreadPoolSize = 0;/*from   w  ww.  j  a v  a  2 s.  co m*/
    }

    Integer maxThreadPoolSize = distributionNotificationTopic.getMaxThreadPoolSize();
    if (maxThreadPoolSize == null) {
        maxThreadPoolSize = 10;
    }

    ThreadFactoryBuilder threadFactoryBuilder = new ThreadFactoryBuilder();
    threadFactoryBuilder.setNameFormat("distribution-notification-thread-%d");
    ThreadFactory threadFactory = threadFactoryBuilder.build();

    ExecutorService executorService = new ThreadPoolExecutor(minThreadPoolSize, maxThreadPoolSize, 60L,
            TimeUnit.SECONDS, new SynchronousQueue<Runnable>(), threadFactory);

    return executorService;
}

From source file:org.apache.druid.server.lookup.namespace.cache.NamespaceExtractionCacheManager.java

public NamespaceExtractionCacheManager(final Lifecycle lifecycle, final ServiceEmitter serviceEmitter,
        final NamespaceExtractionConfig config) {
    this.scheduledExecutorService = new ScheduledThreadPoolExecutor(config.getNumExtractionThreads(),
            new ThreadFactoryBuilder().setDaemon(true).setNameFormat("NamespaceExtractionCacheManager-%d")
                    .setPriority(Thread.MIN_PRIORITY).build());
    ExecutorServices.manageLifecycle(lifecycle, scheduledExecutorService);
    scheduledExecutorService.scheduleAtFixedRate(new Runnable() {
        @Override//from  ww  w .  j  a  v a  2s  .  c om
        public void run() {
            try {
                monitor(serviceEmitter);
            } catch (Exception e) {
                log.error(e, "Error emitting namespace stats");
                if (Thread.currentThread().isInterrupted()) {
                    throw Throwables.propagate(e);
                }
            }
        }
    }, 1, 10, TimeUnit.MINUTES);
}

From source file:com.baifendian.swordfish.masterserver.master.FlowExecManager.java

/**
 * @param masterService// w  ww  .  j ava  2  s .  co  m
 * @param flowDao
 */
public FlowExecManager(MasterServiceImpl masterService, FlowDao flowDao) {
    this.masterService = masterService;
    this.flowDao = flowDao;

    ThreadFactory flowThreadFactory = new ThreadFactoryBuilder()
            .setNameFormat("Scheduler-JobExecManager-AddData").build();
    appendFlowExecutorService = Executors.newCachedThreadPool(flowThreadFactory);
}

From source file:org.sonar.application.cluster.health.HealthStateSharingImpl.java

@Override
public void start() {
    executorService = new DelegateHealthStateRefresherExecutorService(
            Executors.newSingleThreadScheduledExecutor(new ThreadFactoryBuilder().setDaemon(false)
                    .setNameFormat("health_state_refresh-%d").build()));
    healthStateRefresher = new HealthStateRefresher(executorService, nodeHealthProvider,
            new SharedHealthStateImpl(hzMember));
    healthStateRefresher.start();/*from w  w  w  .j a  v  a2  s. co  m*/
}