org.apache.ignite.thread

## Class IgniteThreadPoolExecutor

- java.lang.Object
- - java.util.concurrent.AbstractExecutorService
  - - java.util.concurrent.ThreadPoolExecutor
    - - org.apache.ignite.thread.IgniteThreadPoolExecutor

All Implemented Interfaces:
  Executor, ExecutorService

    public class IgniteThreadPoolExecutor
    extends ThreadPoolExecutor

An `ExecutorService` that executes submitted tasks using pooled grid threads.

### Nested Class Summary

### Nested classes/interfaces inherited from class java.util.concurrent.ThreadPoolExecutor

`ThreadPoolExecutor.AbortPolicy, ThreadPoolExecutor.CallerRunsPolicy, ThreadPoolExecutor.DiscardOldestPolicy, ThreadPoolExecutor.DiscardPolicy`

### Constructor Summary

Constructors
Constructor and Description
`IgniteThreadPoolExecutor(int corePoolSize, int maxPoolSize, long keepAliveTime, BlockingQueue<Runnable> workQ, ThreadFactory threadFactory)` Creates a new service with the given initial parameters.
`IgniteThreadPoolExecutor(String threadNamePrefix, String igniteInstanceName, int corePoolSize, int maxPoolSize, long keepAliveTime, BlockingQueue<Runnable> workQ)` Creates a new service with the given initial parameters.
`IgniteThreadPoolExecutor(String threadNamePrefix, String igniteInstanceName, int corePoolSize, int maxPoolSize, long keepAliveTime, BlockingQueue<Runnable> workQ, byte plc, Thread.UncaughtExceptionHandler eHnd)` Creates a new service with the given initial parameters.

### Method Summary

### Methods inherited from class java.util.concurrent.ThreadPoolExecutor

`afterExecute, allowCoreThreadTimeOut, allowsCoreThreadTimeOut, awaitTermination, beforeExecute, execute, finalize, getActiveCount, getCompletedTaskCount, getCorePoolSize, getKeepAliveTime, getLargestPoolSize, getMaximumPoolSize, getPoolSize, getQueue, getRejectedExecutionHandler, getTaskCount, getThreadFactory, isShutdown, isTerminated, isTerminating, prestartAllCoreThreads, prestartCoreThread, purge, remove, setCorePoolSize, setKeepAliveTime, setMaximumPoolSize, setRejectedExecutionHandler, setThreadFactory, shutdown, shutdownNow, terminated, toString`

### Methods inherited from class java.util.concurrent.AbstractExecutorService

`invokeAll, invokeAll, invokeAny, invokeAny, newTaskFor, newTaskFor, submit, submit, submit`

### Methods inherited from class java.lang.Object

`clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### IgniteThreadPoolExecutor

    public IgniteThreadPoolExecutor(String threadNamePrefix,
                                    String igniteInstanceName,
                                    int corePoolSize,
                                    int maxPoolSize,
                                    long keepAliveTime,
                                    BlockingQueue<Runnable> workQ)

Creates a new service with the given initial parameters.

Parameters:
  `threadNamePrefix` - Will be added at the beginning of all created threads.
  `igniteInstanceName` - Must be the name of the grid.
  `corePoolSize` - The number of threads to keep in the pool, even if they are idle.
  `maxPoolSize` - The maximum number of threads to allow in the pool.
  `keepAliveTime` - When the number of threads is greater than the core, this is the maximum time that excess idle threads will wait for new tasks before terminating.
  `workQ` - The queue to use for holding tasks before they are executed. This queue will hold only runnable tasks submitted by the `ThreadPoolExecutor.execute(Runnable)` method.

#### IgniteThreadPoolExecutor

    public IgniteThreadPoolExecutor(String threadNamePrefix,
                                    String igniteInstanceName,
                                    int corePoolSize,
                                    int maxPoolSize,
                                    long keepAliveTime,
                                    BlockingQueue<Runnable> workQ,
                                    byte plc,
                                    Thread.UncaughtExceptionHandler eHnd)

Creates a new service with the given initial parameters.

Parameters:
  `threadNamePrefix` - Will be added at the beginning of all created threads.
  `igniteInstanceName` - Must be the name of the grid.
  `corePoolSize` - The number of threads to keep in the pool, even if they are idle.
  `maxPoolSize` - The maximum number of threads to allow in the pool.
  `keepAliveTime` - When the number of threads is greater than the core, this is the maximum time that excess idle threads will wait for new tasks before terminating.
  `workQ` - The queue to use for holding tasks before they are executed. This queue will hold only runnable tasks submitted by the `ThreadPoolExecutor.execute(Runnable)` method.
  `plc` - `GridIoPolicy` for thread pool.
  `eHnd` - Uncaught exception handler for thread pool.

#### IgniteThreadPoolExecutor

    public IgniteThreadPoolExecutor(int corePoolSize,
                                    int maxPoolSize,
                                    long keepAliveTime,
                                    BlockingQueue<Runnable> workQ,
                                    ThreadFactory threadFactory)

Creates a new service with the given initial parameters.

Parameters:
  `corePoolSize` - The number of threads to keep in the pool, even if they are idle.
  `maxPoolSize` - The maximum number of threads to allow in the pool.
  `keepAliveTime` - When the number of threads is greater than the core, this is the maximum time that excess idle threads will wait for new tasks before terminating.
  `workQ` - The queue to use for holding tasks before they are executed. This queue will hold only the runnable tasks submitted by the `ThreadPoolExecutor.execute(Runnable)` method.
  `threadFactory` - Thread factory.

2018 Copyright © Apache Software Foundation

Follow @ApacheIgnite

Ignite Fabric | : ver. 2.6.0
Release Date | : July 10 2018