WEB开发网
开发学院软件开发Java 深入理解Apache Mina(5)---- 配置Mina的 线... 阅读

深入理解Apache Mina(5)---- 配置Mina的 线程模型

 2009-09-16 00:00:00 来源:WEB开发网   
核心提示: I/O processor thread 该线程模型的主要作用就行接收和发送数据,所有的IO操作在服务器与客户端的连接建立后,深入理解Apache Mina(5)---- 配置Mina的 线程模型(2),所有的数据的接收和发送都是有该线程模型来负责的,知道客户端与服务器的连接关闭,但Socket

I/O processor thread

该线程模型的主要作用就行接收和发送数据,所有的IO操作在服务器与客户端的连接建立后,所有的数据的接收和发送都是有该线程模型来负责的,知道客户端与服务器的连接关闭,该线程模型才停止工作。该线程模型可以由程序员根据需要进行配置。该线程模型默认的线程的数量为cpu的核数+1。若你的cpu为双核的,则你的I/O processor 线程的最大数量为3,同理若你的若你的cpu为四核的,那么你的I/O processor 线程的最大数量为5。

由上面的内容我们可以知道在Mina中可以配置的线程数量只有I/O processor,对于每个IoService再创建其实例的时候可以配置该IoService的I/O processor的线程数量。在SokcetConnector和SocketAccpetor中I/O Processor的数量是由CPU的核数+1来决定的。

他们的配置方式如下:  

Java代码 深入理解Apache Mina(5)---- 配置Mina的 线程模型

<span><span style="font-size: small;">        /*** 
         * 配置SocketAcceptor监听器的I/O Processor的线程的数量, 
         * 此处的I/O Processor的线程数量由CPU的核数决定,但Acceptor 
         * 的线程数量只有一个,也就是接收客户端连接的线程数只有一个, 
         * Acceptor的线程数量不能配置。 
         * */  
        SocketAcceptor acceptor = new SocketAcceptor(Runtime.getRuntime()  
                .availableProcessors() + 1, Executors.newCachedThreadPool());  
  
        /*** 
         * 配置SocketConnector监听器的I/O Processor的线程的数量, 
         * 此处的I/O Processor的线程数量由CPU的核数决定,但SocketConnector 
         * 的线程数量只有一个,也就是接收客户端连接的线程数只有一个, 
         * SocketConnector的线程数量不能配置。 
         * */  
        SocketConnector connector = new SocketConnector(Runtime.getRuntime()  
                .availableProcessors() + 1, Executors.newCachedThreadPool());      
</span></span>  

上一页  1 2 3 4 5  下一页

Tags:深入 理解 Apache

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接