• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

Java ExecutorThreadModel类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了Java中org.apache.mina.common.ExecutorThreadModel的典型用法代码示例。如果您正苦于以下问题:Java ExecutorThreadModel类的具体用法?Java ExecutorThreadModel怎么用?Java ExecutorThreadModel使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



ExecutorThreadModel类属于org.apache.mina.common包,在下文中一共展示了ExecutorThreadModel类的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的Java代码示例。

示例1: createConnectionManagerListener

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
private void createConnectionManagerListener() {
    // Start multiplexers socket unless it's been disabled.
    if (isConnectionManagerListenerEnabled()) {
        // Create SocketAcceptor with correct number of processors
        multiplexerSocketAcceptor = buildSocketAcceptor();
        // Customize Executor that will be used by processors to process incoming stanzas
        ExecutorThreadModel threadModel = ExecutorThreadModel.getInstance("connectionManager");
        int eventThreads = JiveGlobals.getIntProperty("xmpp.multiplex.processing.threads", 16);
        ThreadPoolExecutor eventExecutor = (ThreadPoolExecutor) threadModel.getExecutor();
        eventExecutor.setCorePoolSize(eventThreads + 1);
        eventExecutor.setMaximumPoolSize(eventThreads + 1);
        eventExecutor.setKeepAliveTime(60, TimeUnit.SECONDS);
        multiplexerSocketAcceptor.getDefaultConfig().setThreadModel(threadModel);
        // Add the XMPP codec filter
        multiplexerSocketAcceptor.getFilterChain().addFirst("xmpp", new ProtocolCodecFilter(new XMPPCodecFactory()));

    }
}
 
开发者ID:coodeer,项目名称:g3server,代码行数:19,代码来源:ConnectionManagerImpl.java


示例2: createComponentListener

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
private void createComponentListener() {
    // Start components socket unless it's been disabled.
    if (isComponentListenerEnabled() && componentAcceptor == null) {
        // Create SocketAcceptor with correct number of processors
        componentAcceptor = buildSocketAcceptor();
        // Customize Executor that will be used by processors to process incoming stanzas
        ExecutorThreadModel threadModel = ExecutorThreadModel.getInstance("component");
        int eventThreads = JiveGlobals.getIntProperty("xmpp.component.processing.threads", 16);
        ThreadPoolExecutor eventExecutor = (ThreadPoolExecutor)threadModel.getExecutor();
        eventExecutor.setCorePoolSize(eventThreads + 1);
        eventExecutor.setMaximumPoolSize(eventThreads + 1);
        eventExecutor.setKeepAliveTime(60, TimeUnit.SECONDS);

        componentAcceptor.getDefaultConfig().setThreadModel(threadModel);
        // Add the XMPP codec filter
        componentAcceptor.getFilterChain().addFirst("xmpp", new ProtocolCodecFilter(new XMPPCodecFactory()));
    }
}
 
开发者ID:coodeer,项目名称:g3server,代码行数:19,代码来源:ConnectionManagerImpl.java


示例3: createClientListeners

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
private void createClientListeners() {
    // Start clients plain socket unless it's been disabled.
    if (isClientListenerEnabled()) {
        // Create SocketAcceptor with correct number of processors
        socketAcceptor = buildSocketAcceptor();
        // Customize Executor that will be used by processors to process incoming stanzas
        ExecutorThreadModel threadModel = ExecutorThreadModel.getInstance("client");
        int eventThreads = JiveGlobals.getIntProperty("xmpp.client.processing.threads", 16);
        ThreadPoolExecutor eventExecutor = (ThreadPoolExecutor)threadModel.getExecutor();
        eventExecutor.setCorePoolSize(eventThreads + 1);
        eventExecutor.setMaximumPoolSize(eventThreads + 1);
        eventExecutor.setKeepAliveTime(60, TimeUnit.SECONDS);

        socketAcceptor.getDefaultConfig().setThreadModel(threadModel);
        // Add the XMPP codec filter
        socketAcceptor.getFilterChain().addFirst("xmpp", new ProtocolCodecFilter(new XMPPCodecFactory()));
        // Kill sessions whose outgoing queues keep growing and fail to send traffic
        socketAcceptor.getFilterChain().addAfter("xmpp", "outCap", new StalledSessionsFilter());
    }
}
 
开发者ID:coodeer,项目名称:g3server,代码行数:21,代码来源:ConnectionManagerImpl.java


示例4: createConnectionManagerListener

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
private void createConnectionManagerListener() {
    // Start multiplexers socket unless it's been disabled.
    if (isConnectionManagerListenerEnabled()) {
        // Create SocketAcceptor with correct number of processors
        multiplexerSocketAcceptor = buildSocketAcceptor("multiplexer");
        // Customize Executor that will be used by processors to process incoming stanzas
        ExecutorThreadModel threadModel = ExecutorThreadModel.getInstance("connectionManager");
        int eventThreads = JiveGlobals.getIntProperty("xmpp.multiplex.processing.threads", 16);
        ThreadPoolExecutor eventExecutor = (ThreadPoolExecutor) threadModel.getExecutor();
        eventExecutor.setCorePoolSize(eventThreads + 1);
        eventExecutor.setMaximumPoolSize(eventThreads + 1);
        eventExecutor.setKeepAliveTime(60, TimeUnit.SECONDS);
        multiplexerSocketAcceptor.getDefaultConfig().setThreadModel(threadModel);
        // Add the XMPP codec filter
        multiplexerSocketAcceptor.getFilterChain().addFirst("xmpp", new ProtocolCodecFilter(new XMPPCodecFactory()));

    }
}
 
开发者ID:idwanglu2010,项目名称:openfire,代码行数:19,代码来源:ConnectionManagerImpl.java


示例5: createComponentListener

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
private void createComponentListener() {
    // Start components socket unless it's been disabled.
    if (isComponentListenerEnabled() && componentAcceptor == null) {
        // Create SocketAcceptor with correct number of processors
        componentAcceptor = buildSocketAcceptor("component");
        // Customize Executor that will be used by processors to process incoming stanzas
        ExecutorThreadModel threadModel = ExecutorThreadModel.getInstance("component");
        int eventThreads = JiveGlobals.getIntProperty("xmpp.component.processing.threads", 16);
        ThreadPoolExecutor eventExecutor = (ThreadPoolExecutor)threadModel.getExecutor();
        eventExecutor.setCorePoolSize(eventThreads + 1);
        eventExecutor.setMaximumPoolSize(eventThreads + 1);
        eventExecutor.setKeepAliveTime(60, TimeUnit.SECONDS);

        componentAcceptor.getDefaultConfig().setThreadModel(threadModel);
        // Add the XMPP codec filter
        componentAcceptor.getFilterChain().addFirst("xmpp", new ProtocolCodecFilter(new XMPPCodecFactory()));
    }
}
 
开发者ID:idwanglu2010,项目名称:openfire,代码行数:19,代码来源:ConnectionManagerImpl.java


示例6: createClientListeners

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
private void createClientListeners() {
    // Start clients plain socket unless it's been disabled.
    if (isClientListenerEnabled()) {
        // Create SocketAcceptor with correct number of processors
        socketAcceptor = buildSocketAcceptor("client");
        // Customize Executor that will be used by processors to process incoming stanzas
        ExecutorThreadModel threadModel = ExecutorThreadModel.getInstance("client");
        int eventThreads = JiveGlobals.getIntProperty("xmpp.client.processing.threads", 16);
        ThreadPoolExecutor eventExecutor = (ThreadPoolExecutor)threadModel.getExecutor();
        eventExecutor.setCorePoolSize(eventThreads + 1);
        eventExecutor.setMaximumPoolSize(eventThreads + 1);
        eventExecutor.setKeepAliveTime(60, TimeUnit.SECONDS);

        socketAcceptor.getDefaultConfig().setThreadModel(threadModel);
        // Add the XMPP codec filter
        socketAcceptor.getFilterChain().addFirst("xmpp", new ProtocolCodecFilter(new XMPPCodecFactory()));
        // Kill sessions whose outgoing queues keep growing and fail to send traffic
        socketAcceptor.getFilterChain().addAfter("xmpp", "outCap", new StalledSessionsFilter());
    }
}
 
开发者ID:idwanglu2010,项目名称:openfire,代码行数:21,代码来源:ConnectionManagerImpl.java


示例7: accept

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
public void accept(final NetworkTransportConfiguration config, final ProtocolEngineFactory factory,
        final SSLContextFactory sslFactory)
{
    int processors = config.getConnectorProcessors();
    
    if (Transport.TCP.equalsIgnoreCase(config.getTransport()))
    {
        _acceptor = new SocketAcceptor(processors, new NewThreadExecutor());

        SocketAcceptorConfig sconfig = (SocketAcceptorConfig) _acceptor.getDefaultConfig();
        sconfig.setThreadModel(ExecutorThreadModel.getInstance("MinaNetworkTransport(Acceptor)"));
        SocketSessionConfig sc = (SocketSessionConfig) sconfig.getSessionConfig();
        sc.setTcpNoDelay(config.getTcpNoDelay());
        sc.setSendBufferSize(config.getSendBufferSize());
        sc.setReceiveBufferSize(config.getReceiveBufferSize());

        if (config.getHost().equals(WILDCARD_ADDRESS))
        {
            _address = new InetSocketAddress(config.getPort());
        }
        else
        {
            _address = new InetSocketAddress(config.getHost(), config.getPort());
        }
    }
    else
    {
        throw new TransportException("Unknown transport: " + config.getTransport());
    }

    try
    {
        _acceptor.bind(_address, new MinaNetworkHandler(sslFactory, factory));
    }
    catch (IOException e)
    {
        throw new TransportException("Could not bind to " + _address, e);
    }
}
 
开发者ID:wso2,项目名称:andes,代码行数:40,代码来源:MinaNetworkTransport.java


示例8: connect

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
public NetworkConnection connect(Receiver<java.nio.ByteBuffer> receiver, ConnectionSettings settings, SSLContextFactory sslFactory)
{
    final IoConnector ioConnector = _ioConnectorFactory.newConnector();
    final SocketAddress address;
    final String protocol = settings.getProtocol();
    final int port = settings.getPort();

    if (Transport.TCP.equalsIgnoreCase(protocol))
    {
        address = new InetSocketAddress(settings.getHost(), port);
    }
    else
    {
        throw new TransportException("Unknown transport: " + protocol);
    }

    LOGGER.debug("Attempting connection to " + address);

    if (ioConnector instanceof SocketConnector)
    {
        SocketConnectorConfig cfg = (SocketConnectorConfig) ioConnector.getDefaultConfig();
        cfg.setThreadModel(ExecutorThreadModel.getInstance("MinaNetworkTransport(Client)"));

        SocketSessionConfig scfg = (SocketSessionConfig) cfg.getSessionConfig();
        scfg.setTcpNoDelay(true);
        scfg.setSendBufferSize(CLIENT_DEFAULT_BUFFER_SIZE);
        scfg.setReceiveBufferSize(CLIENT_DEFAULT_BUFFER_SIZE);

        // Don't have the connector's worker thread wait around for other
        // connections (we only use one SocketConnector per connection
        // at the moment anyway). This allows short-running
        // clients (like unit tests) to complete quickly.
        ((SocketConnector) ioConnector).setWorkerTimeout(0);
    }

    if (settings.isUseSSL()){
        try {
            SSLContext sslContext = SSLUtil.createSSLContext(settings);
            SSLFilter sslFilter = new SSLFilter(sslContext);
            sslFilter.setUseClientMode(true);
            ioConnector.getFilterChain().addFirst("sslFilter", sslFilter);
        } catch (Exception e) {
            Exception ex = new Exception("An exception occurred in creating SSLContext: ", e);
            ex.printStackTrace();
        }
    }

    ConnectFuture future = ioConnector.connect(address, new MinaNetworkHandler(null), ioConnector.getDefaultConfig());
    future.join();
    if (!future.isConnected())
    {
        throw new TransportException("Could not open connection");
    }
    IoSession session = future.getSession();
    session.setAttachment(receiver);

    return new MinaNetworkConnection(session);
}
 
开发者ID:wso2,项目名称:andes,代码行数:59,代码来源:MinaNetworkTransport.java


示例9: startClientListeners

import org.apache.mina.common.ExecutorThreadModel; //导入依赖的package包/类
private void startClientListeners(String localIPAddress) {
    if (!JiveGlobals.getBooleanProperty("xmpp.socket.default.active", true)) {
        // Do not start listener if service is disabled
        return;
    }
    // Start clients plain socket unless it's been disabled.
    int port = getClientListenerPort();
    // Create SocketAcceptor with correct number of processors
    socketAcceptor = buildSocketAcceptor();
    // Customize Executor that will be used by processors to process incoming stanzas
    ExecutorThreadModel threadModel = ExecutorThreadModel.getInstance("client");
    int eventThreads = JiveGlobals.getIntProperty("xmpp.processor.threads.standard", 16);
    ThreadPoolExecutor eventExecutor = (ThreadPoolExecutor)threadModel.getExecutor();
    eventExecutor.setCorePoolSize(eventThreads + 1);
    eventExecutor.setMaximumPoolSize(eventThreads + 1);
    eventExecutor.setKeepAliveTime(60, TimeUnit.SECONDS);

    socketAcceptor.getDefaultConfig().setThreadModel(threadModel);
    // Add the XMPP codec filter
    socketAcceptor.getFilterChain().addFirst("xmpp", new ProtocolCodecFilter(new XMPPCodecFactory()));
    // Kill sessions whose outgoing queues keep growing and fail to send traffic
    socketAcceptor.getFilterChain().addAfter("xmpp", "outCap", new StalledSessionsFilter());

    try {
        // Listen on a specific network interface if it has been set.
        String interfaceName = JiveGlobals.getXMLProperty("xmpp.socket.network.interface");
        InetAddress bindInterface = null;
        if (interfaceName != null) {
            if (interfaceName.trim().length() > 0) {
                bindInterface = InetAddress.getByName(interfaceName);
            }
        }
        // Start accepting connections
        socketAcceptor.bind(new InetSocketAddress(bindInterface, port), new ClientConnectionHandler());

        List<String> params = new ArrayList<String>();
        params.add(Integer.toString(port));
        Log.info(LocaleUtils.getLocalizedString("startup.plain", params));
    }
    catch (Exception e) {
        System.err.println("Error starting XMPP listener on port " + port + ": " +
                e.getMessage());
        Log.error(LocaleUtils.getLocalizedString("admin.error.socket-setup"), e);
    }
}
 
开发者ID:igniterealtime,项目名称:Openfire-connectionmanager,代码行数:46,代码来源:ConnectionManager.java



注:本文中的org.apache.mina.common.ExecutorThreadModel类示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Java JavaSourceRootProperties类代码示例发布时间:2022-05-23
下一篇:
Java Docopt类代码示例发布时间:2022-05-23
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap