SocketChannel写入多个响应

时间:2017-06-16 08:08:17

标签: java nio socketchannel

我正在为我的项目编写虚拟服务器以接受来自客户端的请求并返回一个或多个响应。 在虚拟服务器端,它从客户端获取请求,并找到要发送回的匹配消息。下面是写作部分的代码。

for (String line : response) {
        ByteBuffer msgBuf = ByteBuffer.wrap(line.getBytes());
        if (!ccc.isConnected())
            ccc.connect(new InetSocketAddress("127.0.0.1", 50051));
        logger.info("Capacity of msgBuf is : " + msgBuf.capacity());
        ccc.write(msgBuf);
        logger.info("Seding out the response : " + line);
        msgBuf.rewind();
        Thread.sleep(2000);
    }

如果服务器发现2个数据要发回,则ccc套接字将写入两次。 我把Thread.sleep(2000)放在那里,因为如果我不这样做,客户端将获得2个数据。但我希望服务器逐个发送数据。

0 个答案:

没有答案