在Mina定期从客户端发送数据到服务器

时间:2015-02-17 23:57:39

标签: java apache client server mina

我想定期从客户端向服务器发送数据。如果数据将通过客户端处理程序发送,我怎样才能在Mina中执行此操作。 我写这样的openSocket()函数:

    public void openSocket(Object c)
{
    connector.getSessionConfig().setReadBufferSize(2048);
    connector.getFilterChain().addLast("logger", new LoggingFilter());
    connector.getFilterChain().addLast("codec", new ProtocolCodecFilter(new myCodecFactory()));

    connector.setHandler(new net.floodlightcontroller.Example.ClientSessionHandler(c));
    ConnectFuture future = connector.connect(new InetSocketAddress(HOSTNAME, PORT));
    future.awaitUninterruptibly();

    IoSession session = future.getSession();
    session.getConfig().setUseReadOperation(true);
    session.getCloseFuture().awaitUninterruptibly();

     connector.dispose();   
}

当你看到函数在init()函数中调用它之后接收包含我的初始数据的对象时。如果我想通过相同的连接在一段时间后发送另一个数据,我该怎么做。如果我像下面的代码一样调用openSocket()函数它不起作用。我在哪里可以打电话和如何?

try {
        while (true){
        openSocket(cObj);
        Thread.sleep(5000, 5);}
    } catch(InterruptedException ie) {}

0 个答案:

没有答案