你狗哥 2020-01-20 21:52 采纳率: 0%
浏览 194
已采纳

关于socket连接的问题

例:
假设目标电脑IP地址为192.168.1.12 端口号为5000,设置超时连接时长为10000毫秒(10秒)
下面建立连接

Socket client = new Socket();
client.connect(new InetSocketAddress("192.168.1.12", 5000), 10000);

问:
现在假如这个IP地址或者端口号连接不上 我会报SocketTimeoutException异常 但是这个异常不能通过try catch捕获
如果catch捕获这个异常如下代码

try{
}
catch (SocketTimeoutException e1) {
            e1.printStackTrace();
            System.out.println("--------------");
        }

如操作上面代码会提示需要throws这个异常
图片说明

但是如果我throws了这个异常的话 再运行代码,如果时间超时 控制台还是会报上述SocketTimeoutException异常
求大神解决
现在需实现在超时情况下控制台打印一个报警信息并且控制台不爆红!

  • 写回答

3条回答 默认 最新

      报告相同问题?

      相关推荐 更多相似问题

      悬赏问题

      • ¥20 python跨服务器实现复制 ,剪切的功能需求
      • ¥15 R语言,单因素cox检验,时间分层后,使用coz.zph()函数再次ph假设检验时报错,如何解决?
      • ¥15 关于#C语言冒泡排序型#的问题,如何解决?
      • ¥15 如何预处理存在负值的样本数据,使其能够全都成为正的
      • ¥15 SW画图拖影,平滑处理如何关闭
      • ¥15 请问怎么通过css改变图片颜色
      • ¥15 Blender: auto rig pro骨骼动画导出后变形穿模
      • ¥15 C51单片机的设计思路哈
      • ¥15 Linux脏牛提权漏洞
      • ¥15 为何我用uni-data-checkbox 标签在APP里调试无法显示?