我有一个Client-Server java nio应用程序。在某些情况下,我需要处理这样的情况:
服务器上的:
SocketChannel socketChannel = (SocketChannel) key.channel();
for (int i=0;i<30;i++){
String message = "message: "+i;
ByteBuffer messageBuffer = ByteBuffer.wrap(message.getBytes());
socketChannel.write(messageBuffer);
}
并在客户端:
while (true){
try {
int bytesreadden= channel.read(buffer);
if (bytesreadden >0){
System.out.println(new String(buffer.array(),0,buffer.position()));
buffer.clear();
}
}catch (IOException e){}
}
在我的情况下,客户端中的这30条消息似乎是一条重要信息。http://i.imgur.com/hy8PsRj.png
那么,处理这种情况的最佳解决方案是什么?谢谢!