Home / Class/ MultiThreadIoEventLoopGroup Class — netty Architecture

MultiThreadIoEventLoopGroup Class — netty Architecture

Architecture documentation for the MultiThreadIoEventLoopGroup class in MultiThreadIoEventLoopGroup.java from the netty codebase.

Entity Profile

Dependency Diagram

graph TD
  da9d8731_208a_f788_15d3_f12fba3923ea["MultiThreadIoEventLoopGroup"]
  59358025_b237_01b3_7a3a_733146e9c86e["MultiThreadIoEventLoopGroup.java"]
  da9d8731_208a_f788_15d3_f12fba3923ea -->|defined in| 59358025_b237_01b3_7a3a_733146e9c86e
  85381b0f_6325_fa1a_61b1_5d03bf7f3300["MultiThreadIoEventLoopGroup()"]
  da9d8731_208a_f788_15d3_f12fba3923ea -->|method| 85381b0f_6325_fa1a_61b1_5d03bf7f3300
  766fc172_db2e_5276_fbe3_b480e0c312cf["EventLoop()"]
  da9d8731_208a_f788_15d3_f12fba3923ea -->|method| 766fc172_db2e_5276_fbe3_b480e0c312cf
  5c154839_beb8_8994_f12a_76b02b2a3af8["IoEventLoop()"]
  da9d8731_208a_f788_15d3_f12fba3923ea -->|method| 5c154839_beb8_8994_f12a_76b02b2a3af8
  ee53cb7c_c2d9_cbd6_4b66_26c3a4aa42e8["combine()"]
  da9d8731_208a_f788_15d3_f12fba3923ea -->|method| ee53cb7c_c2d9_cbd6_4b66_26c3a4aa42e8

Relationship Graph

Source Code

transport/src/main/java/io/netty/channel/MultiThreadIoEventLoopGroup.java lines 35–228

public class MultiThreadIoEventLoopGroup extends MultithreadEventLoopGroup implements IoEventLoopGroup {

    /**
     * Creates a new instance of the {@link MultiThreadIoEventLoopGroup} using the default number
     * of threads and default {@link ThreadFactory}.
     */
    public MultiThreadIoEventLoopGroup(IoHandlerFactory ioHandlerFactory) {
        this(0, ioHandlerFactory);
    }

    /**
     /**
     * Creates a new instance of the {@link MultiThreadIoEventLoopGroup} using the default {@link ThreadFactory}.
     *
     * @param nThreads          the number of threads and so {@link EventLoop}s that are created.
     * @param ioHandlerFactory  the {@link IoHandlerFactory} that will be used to create {@link IoHandler} for handling
     *                          IO.
     */
    public MultiThreadIoEventLoopGroup(int nThreads, IoHandlerFactory ioHandlerFactory) {
        this(nThreads, (Executor) null, ioHandlerFactory);
    }

    /**
     * Create a new instance using the default number of thread.
     *
     * @param threadFactory     the {@link ThreadFactory} that is used.
     * @param ioHandlerFactory  the {@link IoHandlerFactory} that will be used to create {@link IoHandler} for handling
     *                          IO.
     */
    public MultiThreadIoEventLoopGroup(ThreadFactory threadFactory, IoHandlerFactory ioHandlerFactory) {
        this(0, threadFactory, ioHandlerFactory);
    }

    /**
     * Creates a new instance of the {@link MultiThreadIoEventLoopGroup} using the default number
     * of threads.
     *
     * @param executor          the {@link Executor} that is used.
     * @param ioHandlerFactory  the {@link IoHandlerFactory} that will be used to create {@link IoHandler} for handling
     *                          IO.
     */
    public MultiThreadIoEventLoopGroup(Executor executor,
                                       IoHandlerFactory ioHandlerFactory) {
        super(0, executor, ioHandlerFactory);
    }

    /**
     * Creates a new instance of the {@link MultiThreadIoEventLoopGroup}.
     *
     * @param nThreads          the number of threads and so {@link EventLoop}s that are created.
     * @param executor          the {@link Executor} that is used.
     * @param ioHandlerFactory  the {@link IoHandlerFactory} that will be used to create {@link IoHandler} for handling
     *                          IO.
     */
    public MultiThreadIoEventLoopGroup(int nThreads, Executor executor,
                                       IoHandlerFactory ioHandlerFactory) {
        super(nThreads, executor, ioHandlerFactory);
    }

    /**
     * Creates a new instance of the {@link MultiThreadIoEventLoopGroup}.
     *
     * @param nThreads          the number of threads and so {@link EventLoop}s that are created.
     * @param threadFactory     the {@link ThreadFactory} that is used.
     * @param ioHandlerFactory  the {@link IoHandlerFactory} that will be used to create {@link IoHandler} for handling
     *                          IO.
     */
    public MultiThreadIoEventLoopGroup(int nThreads, ThreadFactory threadFactory,
                                       IoHandlerFactory ioHandlerFactory) {
        super(nThreads, threadFactory, ioHandlerFactory);
    }

    /**
     * Creates a new instance of the {@link MultiThreadIoEventLoopGroup}.
     *
     * @param nThreads          the number of threads and so {@link EventLoop}s that are created.
     * @param executor          the {@link Executor} that is used.
     * @param chooserFactory    the {@link EventExecutorChooserFactory} that is used to choose the
     *                          {@link IoEventLoop} when {@link MultiThreadIoEventLoopGroup#next()} is
     *                          called.
     * @param ioHandlerFactory  the {@link IoHandlerFactory} that will be used to create {@link IoHandler} for handling

Frequently Asked Questions

What is the MultiThreadIoEventLoopGroup class?
MultiThreadIoEventLoopGroup is a class in the netty codebase, defined in transport/src/main/java/io/netty/channel/MultiThreadIoEventLoopGroup.java.
Where is MultiThreadIoEventLoopGroup defined?
MultiThreadIoEventLoopGroup is defined in transport/src/main/java/io/netty/channel/MultiThreadIoEventLoopGroup.java at line 35.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free