双11狂欢大促

盲盒赢 定制羽绒服

开启惊喜盲盒,抽取你的专属好礼

— 惊喜奖品抢先看 —

socket,server端问题

sam172737 sam172737 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
Server端程序:
package com.test22;

import java.io.*;
import java.net.*;

public class Test06_server {
public static void main(String[] args) throws IOException {
ServerSocket ss=new ServerSocket(10000);
Socket s=ss.accept();
InputStream is=s.getInputStream();
byte[] buf=new byte[1024];
int len=0;
len=is.read(buf);
String str1=new String(buf,0,len);
System.out.println(str1);
// while((len=is.read(buf))!=-1){
// System.out.println();
// String str1=new String(buf,0,len);
// System.out.println(str1);
// }
OutputStream os=s.getOutputStream();
String str2="server send message";
os.write(str2.getBytes());
s.close();
ss.close();
}
}


Client端程序:
package com.test22;

import java.io.*;
import java.net.*;

public class Test06_client {
public static void main(String[] args) throws UnknownHostException,
IOException {
Socket s=new Socket("127.0.0.1", 10000);
OutputStream os=s.getOutputStream();
String str1="client send message";
os.write(str1.getBytes());
InputStream is=s.getInputStream();
byte[] buf=new byte[1024];
int len=0;
while((len=is.read(buf))!=-1){
String str2=new String(buf,0,len);
System.out.println(str2);
}
s.close();
}
}

我的问题是:我在server端,使用while()循环的代码来接收客户端的消息会出现阻塞的问题,我但是client端使用while()却没有问题,我想问下是什么原因啊?

求java高手回复
...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部
sam172737
Java SE 62,621 成员 307,251 内容