将 Java 套接字配置为在断开连接时快速失败?

2024-01-02

我的服务器上有一个监听端口,我使用 Java 类连接到该端口Socket接口,即

Socket mySocket = new Socket(host,port);

然后我抓起一个OutputStream,用一个装饰PrintWriter在自动刷新模式下,我在笑 - 除非监听端口关闭。然后我得到

tcp4       0      0  *.9999                 *.*                    LISTEN
tcp        0      0  127.0.0.1.45737        127.0.0.1.9999         CLOSE_WAIT

我似乎无法检测到程序中的问题 - 我尝试使用isConnected()套接字上的方法,但它似乎不知道连接已关闭。

我希望下次尝试写入套接字时知道该问题,以便我可以尝试重新连接并报告问题。

请问有什么建议吗?

谢谢大家


设置一个较短的超时时间?

Does isOutputShutdown()没有得到你想要的东西?

你总是可以建立一个SocketWatcher自己旋转的类Thread并反复尝试将空字符串写入Socket直到引发SocketClosedException.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将 Java 套接字配置为在断开连接时快速失败? 的相关文章

  • 为什么WebRTC需要ICE协议才能运行?

    据我了解 ICE协议用于发现从最终用户设备到 外部 的节点 设备 我不明白为什么需要它 数据包路由不是由路由器和交换机等网络设备负责吗 他们应该找到从网关到最终用户设备的最短路径 实际上 路由器会记住他们之前发现的那些路由 此外 NAT 协
  • 哪个 new 首先执行——在构造函数中还是在构造函数外?

    如果我定义一个类如下 public class myClass private x new anotherClass private y public myClass y new anotherClass 哪个变量会更早获得实例 x 或 y
  • 将图像缩略图上传到服务器,而不上传整个图像

    据我所知 我在这里问的是不可能的 但我想无论如何我都会问 以防我遗漏了什么 假设您想让用户上传 JPG 图像 并且这些图像被缩放为较小的图标 并且原始图像始终被丢弃并且不再需要 有没有什么方法可以在大多数现代浏览器中普遍使用 让用户选择硬盘
  • com.google.gwt.dev.jjs.InternalCompilerException:访问期间出现意外错误

    我在使用版本 2 6 0 编译 gwt 应用程序时遇到以下错误 最初我用 gwt 版本 2 6 1 的 maven 编译它 然后尝试通过版本 2 6 0 的 eclipse 编译它 跟版本兼容有关系吗 com google gwt dev
  • SwingWorker 在 Unsafe.park() 处挂起

    我有一个SwingWorker与后台服务器通信 然后更新JFrame 我正在调试我的应用程序并注意到即使在SwingWorker完成了它的工作 它的线程仍然存在 它挂在Unsafe park java lang Object 这是一个本机方
  • 内容安全策略:页面设置阻止自行加载资源?

    我有基于 Java 的 Web 应用程序运行在Tomcat http en wikipedia org wiki Apache Tomcat6 我的应用程序在本地主机和端口 9001 上运行 为了使我的应用程序更加安全并降低风险XSS ht
  • 如何更改tomcat jmx密码的文件权限

    我正在尝试保护 Windows 平台上托管的本地 tomcat 实例上的 JMX 访问 我已经创建了访问权限和密码文件 并使用以下 VM 参数插入这些文件 Dcom sun management jmxremote password fil
  • 在java中将jpeg/png转换为像素数组

    如何将包含 jpeg 或 png 的字符串转换为像素数组 最好是一维 理想情况下使用java内置的类 原来你需要公共文件上传 http commons apache org fileupload 看着那 这用户指南 http commons
  • 使用 Spring 注入 Google Guava Hashmultimap

    是否可以提供一个创建示例Multimap
  • 摆动刷新周期

    我试图了解何时使用重新验证 重绘 打包 令人惊讶的是 我没有找到详细的底层文档 请随意链接 到目前为止我已经明白这都是 RepaintManager 的责任 油漆 重新油漆指的是脏 干净的东西 pack validate revalidat
  • 从套接字读取 C HTTP

    我想知道如何判断是否已从套接字接收到所有数据 这是一个简单的网络代理 现在我正在处理请求部分 所以发送的内容应该以 r n r n 结尾 我不知道请求会持续多久 我在这里读过一些帖子 说我应该检查读取函数是否返回 0 但其他人说0只在客户端
  • 获取运行时生成的类的字节

    我正在使用一个 Java 框架 该框架使用自定义类加载器在运行时生成一些 代理 类 我想为任何这样的类获取自定义 ClassLoader 从 loadClass 返回的与该类对应的原始字节数组 这可能吗 我知道 如果一个类作为资源存在 那么
  • 为什么 Libgdx 的 Table 不接受缩放操作?

    我在 libgdx 库中使用 scene2d 在游戏中创建一些 UI 我使用了一个表格 我想在用户触摸时采取一些缩放操作以使按钮触摸有意义 当我使用任何其他 Actor 类型 例如 Group 并为其提供缩放操作时 它可以工作 但不能工作表
  • Java字符串中的字符数[重复]

    这个问题在这里已经有答案了 可能的重复 Java 使用unicode上划线显示平方根时字符串的长度 https stackoverflow com questions 7704426 java length of string when u
  • 如何根据服务器/环境动态加载服务器配置?

    目前 我设置了 Maven 配置文件 以便能够为不同的环境 开发 演示 暂存 生产等 部署我的项目 并且它工作得很好 但问题是 对于我拥有的每个模块 Web 应用程序 我需要复制 粘贴此配置文件 它们都是属性文件 当我需要更改环境 服务器配
  • 如何避免连续“重置偏移量”和“寻找最新偏移量”?

    我正在尝试遵循本指南 https spark apache org docs latest structed streaming kafka integration html https spark apache org docs late
  • 如果可能,将 jFrame 输出到第二台显示器

    我在 Java 中的 Swing 上有一个 jFrame 我希望它输出到第二个监视器 如果该监视器存在 我尝试过这个 通过this http download oracle com javase 6 docs api java awt Gr
  • 如何使用SAXReader解析GPX文件?

    我正在尝试解析GPX file http en wikipedia org wiki GPS eXchange Format 我用 JDOM 尝试过 但效果不太好 SAXBuilder builder new SAXBuilder Docu
  • 确保对象实现 Comparable

    我有一个小问题 想知道如何解决它 我有一个通用类Tuple
  • 使用反射 API 填充 Proto 中的地图字段

    我正在尝试编写一个模块 该模块将获取 Message Builder 和从字段名称到值的映射 并将用值填充构建器 一切正常 直到我遇到地图字段 使用 Proto3 我收到一条特定消息 我知道我可以执行该消息的字段 builder b put

随机推荐

  • 通过 SSH 推送到远程存储库时“访问被拒绝”

    我是 Git 新手 似乎在通过网络推送到存储库时遇到问题 这是我重现问题的方法 在计算机上创建一个新的 Git 存储库以推送到 mkdir git test git cd git bare init 然后 我在本地计算机上创建一个新的 Gi
  • bash变量分别捕获stderr和stdout或获取退出值[重复]

    这个问题在这里已经有答案了 我需要捕获 bash 脚本中命令的输出和错误 并了解该命令是否成功 目前 我正在这样捕获两者 output mycommand 2 gt 1 然后我需要检查 mycommand 的退出值 如果失败 我需要对输出做
  • 在标头中声明并初始化静态 int

    如果我的头文件中有以下内容 Foo h Foo public static const int BAR 1234 我是否还需要在 cpp 中定义变量 例如 Foo cpp const int Foo BAR 我们遇到一个问题 在标头中初始化
  • 最新的 Jackrabbit 快照可以在 Lucene 3 上正常工作吗?

    我正在开发一个基于 Java Web 的应用程序 该应用程序同时使用 Jackrabbit 和 Hibernate Search 我面临的问题是 Jackrabbit 严重依赖 Lucene 2 但搜索需要 Lucene 3 才能工作 我设
  • 搁置真的很慢并且占用大量内存还是我做错了什么?

    我正在尝试编写一个程序 该程序使用排序字母的搁置数据库作为键 以及可以从它们创建的单词列表作为值 例如 db mnoo moon mono 所以我编写了一个函数 它接受一个文件名并将其加载到架子中 第一部分将文件转换为与搁置具有相同布局的字
  • R中如何将数字转换为日期? [复制]

    这个问题在这里已经有答案了 我有以下数据框 id lt c 1 2 3 4 date lt c 19970807 19970902 19971010 19970715 df lt data frame id date 其中日期列中的值的类型
  • JavaScript 如何检查手机/平板电脑的用户代理

    我目前正在为客户网站开发一些 JS 工作 该网站在桌面和平板电脑平台上具有不同的功能 考虑 if navigator userAgent match Android i navigator userAgent match webOS i n
  • 使用 swift Xcode 6 默认选项卡栏项目颜色

    环境 Xcode 6 测试版 4 斯威夫特语言 iOS 选项卡式应用程序 默认 xCode 项目 如何将选项卡的默认灰色更改为其他颜色 最好是全球范围内 就我的研究而言 我需要以某种方式将每个选项卡的图像渲染模式更改为原始渲染模式 但我不知
  • Apache 重写 URL 但不重写某些文件夹

    我正在使用 Apache 将我的 URL 重写为干净的 URL RewriteRule index php 目前 这也会重写目录 这正是我想要的 因为我希望所有内容都通过我的 router index php 文件运行 然而 我想做的是拥有
  • SQL Server XML 存在()

    我在使用时遇到一些问题exist and value SQL Server 2008 中的方法 我的 XML 看起来像这样
  • 使用 stringformat 时 WPF 文本框绑定不起作用

    这是我的问题 我有一个文本框 它使用文本框预览并对输入的文本进行一些验证 文本框绑定到 double 属性 最初 当用户输入带有小数的数字时 它会崩溃 因为当数字为 1 时 每次击键后都会更新 它会自动更改为 1 删除小数 并且当在小数点后
  • 批量插入具有地理空间数据类型的表时出现“指定类型未注册”错误

    我正在尝试使用SqlBulkCopy类来自System Data程序集 4 6 1 批量插入具有地理空间数据类型的表 使用的代码大致如下 改编自https github com MikaelEliasson EntityFramework
  • 在邻近区域组建实力相似的团队

    Idea 令人遗憾的是 如此多的伟大国家 例如印度 和球员 例如莫萨拉赫 可能永远不会参加国际足联 足球 足球 世界杯 同样的论点也适用于由少数统治者主导的其他体育赛事 队 例如国际板球和篮球锦标赛 尝试创建一个更加平衡的赛事 同时仍然保留
  • new[] 是否调用 C++ 中的默认构造函数?

    当我使用 new 创建类数组时 int count 10 A arr new A count 我看到它调用了默认构造函数A count次 因此arr has count已初始化类型的对象A 但是如果我使用同样的东西来构造一个 int 数组
  • Java 通过 Socket 传输属性

    首先 这是一个家庭作业问题 话虽如此 我被困住了 谷歌搜索 java Properties over Sockets 会得到很多不相关的东西 我正在尝试通过套接字传输 Properties 对象 API 说它可以通过 Stream 或 Wr
  • 将json字符串转换为java对象?

    我一直在寻找与将 JSON 字符串转换为 Java 对象相关的示例 但没有找到任何好的示例 我发现的那个非常基本 并且没有真正处理复杂的 JSON 字符串 我正在制作一个应用程序 使用谷歌翻译 API 将字符串从英语翻译成不同的语言 Goo
  • 带过滤器 Android 的自定义列表视图适配器

    请尝试在我的列表视图上实现过滤器 但每当文本发生变化时 列表就会消失 请帮忙 这是我的代码 适配器类 package com talagbe schymn import java util ArrayList import android
  • 从 Oracle 的 RAW(16) 转换为 .NET 的 GUID

    我在手动调试 NET 应用程序时遇到困难 其中 Guid 值与 NET 和 Oracle 不同 Where C reads 17D89D326C2142D69B989F5201288DBF Oracle reads 329DD817216C
  • 将 Windows SID 存储在数据库中以供查找

    我有一个 ASP NET MVC 应用程序 我需要允许客户根据其环境配置 MembershipProviders 但仍然能够将该 MembershipUser 映射到我们数据库中的具体用户模型 Membership GetUser 将使我能
  • 将 Java 套接字配置为在断开连接时快速失败?

    我的服务器上有一个监听端口 我使用 Java 类连接到该端口Socket接口 即 Socket mySocket new Socket host port 然后我抓起一个OutputStream 用一个装饰PrintWriter在自动刷新模