首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >“软件导致连接中止:套接字写入错误”的官方原因

“软件导致连接中止:套接字写入错误”的官方原因
EN

Stack Overflow用户
提问于 2010-01-24 17:52:05
回答 12查看 360.1K关注 0票数 163

给定此堆栈跟踪代码片段的

原因: java.net.SocketException:软件导致连接中止:套接字写入错误

(在java.net.SocketOutputStream.socketWrite0(Native方法中)

我试图回答以下问题:

  1. 抛出此异常的是什么代码?(JVM?/Tomcat?/My code?)
  2. 是什么导致抛出此异常?

关于#1的:

Sun的JVM源代码没有包含这条确切的消息,但我认为文本软件导致连接中止:套接字写入错误来自SocketOutputStream的本机实现

代码语言:javascript
复制
private native void socketWrite0(FileDescriptor fd, byte[] b, int off,
                 int len) throws IOException;

关于#2

我的猜测是,这是由于客户端在获得完整响应之前终止了连接(例如,发送了一个请求,但在获得完整响应之前,它被关闭/终止/脱机)

问题:

  1. 上面的假设是否正确(#1和#2)?
  2. 这是否可以与以下情况相区别:“由于服务器端的网络错误,无法写入客户端”?或者,这是否会呈现相同的错误消息?
  3. ,最重要的是:是否有官方文档(例如来自Sun)说明了

我需要证明这个堆栈跟踪是套接字客户端的“错误”,并且服务器无法避免它。(除了捕获异常,或者使用非Sun,尽管这两者都不能真正避免客户端已经终止的事实)

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2126607

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档