导航:首页 > 编程语言 > javasocket异常

javasocket异常

发布时间:2022-08-13 19:56:49

java中使用Socket连接,关闭是出异常如何处理

你光有try catch,但实际并未对产生的网络异常进行处理,然后继续循环,那自然是无限异常下去了。只要在catch到异常后进行相应处理即可,比如关闭连接,然后退出。在服务端,客户端都加上这个处理,比如在客户端加,如下

publicvoidrun()
{
while(true)
{
Useru=newUser();
u.setName("1");
ObjectOutputStreamoos;
try
{

oos=newObjectOutputStream(s.getOutputStream());
oos.writeObject(u);
}
catch(Exceptione)
{
//TODOAuto-generatedcatchblock
e.printStackTrace();

//注意,这边会看到显示的是true,因为对方并没有调用close来关闭连接,而是直接终止程序
System.out.println(s.isConnected());

if(s!=null)
{
try
{
s.close();
s=null;
}
catch(Exceptionex)
{
ex.printStackTrace();
}

System.out.println("远程连接异常,关闭连接");
return;
}
}
}
}

注:

你的这种情况即不能用u=ois.readObject())!=null来判断,也不能用s.isConnected&&!s.isColse()来判断,因为你是直接终止服务端或者客户端的运行,而不是先close连接,再终止程序。

㈡ java里socket通信,异常处理问题。

直接用这种方式处理:

while(true){
socket=newSocket(("192.168.183.1",9002);
socket.setSoTimeout(5000);//5000ms=5s
try{
socket.connect();
}catch(IOExceptione){
//这行写你提示通信失败提示
continue;
}
}

㈢ Java socket 编程 连接失败!

如果是不停的发送数据,你可以维持一个socket长连接,当客户端连接上发送完数据后不要关闭socket,继续发送握手信息以维持连接。客户端很多的话就用线程池ThreadPoolExecutor.
具体资料:

㈣ java异常处理:关于Socket编程的

当输入过程中意外到达文件或流的末尾时,抛出此异常。 此异常主要被数据输入流用来表明到达流的末尾。注意,其他许多输入操作返回一个特殊值表示到达流的末尾,而不是抛出异常。
代码太少,无法再细说了。

㈤ java.net.SocketTimeoutException: Read timed out

具体的解决方法如下:


修改tomcat配置文件server.xml,找到类似于下面配置:

<Connector port="8086" maxHttpHeaderSize="8192"。

maxThreads="150" minSpareThreads="25" maxSpareThreads="75"。

enableLookups="false" redirectPort="8443" acceptCount="100"。

connectionTimeout="20000" disableUploadTimeout="true" /> 。

将上面的参数disableUploadTimeout值改为false即可。

阅读全文

与javasocket异常相关的资料

热点内容
解压新奇特视频 浏览:702
图书信息管理系统java 浏览:548
各种直线命令详解 浏览:859
程序员泪奔 浏览:143
素材怎么上传到服务器 浏览:513
android百度离线地图开发 浏览:187
web可视化编程软件 浏览:288
java笔试编程题 浏览:742
win11什么时候可以装安卓 浏览:560
java不写this 浏览:999
云点播电影网php源码 浏览:95
pythonclass使用方法 浏览:226
移动加密软件去哪下载 浏览:294
php弹出alert 浏览:209
吉林文档课件加密费用 浏览:136
传感器pdf下载 浏览:289
随车拍app绑定什么设备 浏览:898
方维团购系统源码 浏览:993
linux反弹shell 浏览:159
打印机接口加密狗还能用吗 浏览:301