从socket中读取数据时使用超时

05、基于ALV表报实现复选框、全选、取消全选等功能 基于Function ALV实现复选框、全选及取消全选等功能 阅读详情
<script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script> Java 1.4在Java API加入了非阻塞I/O(non-blocking I/O),不过Java 1.3和更早的版本都不支持这样的特性。然而,你可以用java.net.Socket类的超时属性来获得一些类似于非阻塞I/O的功能。 要使用超时属性,首先你要创建一个socket,然后设置你期望的超时时间。setSoTimeout方法有一个参数,这个int型参数指定了socket在抛出一个违例前要等待的超时时间,单位是毫秒,像下面的例子: Socket s = new Socket(server, port); System.out.println(s.getSoTimeout()); s.setSoTimeout(5000); InputStream in = s.getInputStream(); 现在我们尝试从这个socket中读数据。如果超过了指定的时间还读不到任何数据,程序将抛出一个java.io.InterruptedIOException。你可以捕获这一违例并决定是否尝试进行另一次读取操作: try { while ( (bytesRead = in.read(buffer)) != -1 ) { // do something with the data System.out.println (new String(buffer, 0, bytesRead)); } } catch (InterruptedIOException e) { System.err.print("timeout on read"); // 决定是否继续读取 } 在早于1.4的Java版本中,当从socket中读取数据时,你的程序不得不阻塞起来,但并不意味着你的程序这时什么也不能做。
WSL2不能上网,Failed to connect to github.com port 443问题解决方案 WSL2不能上网: 问题:ping外网无效 例如:ping www.baidu.com失败 解决方案: 在wsl: $sudo vi /etc/wsl.conf wsl.conf: [network] generateResolvConf = false 在PowerShell: $sudo vi /etc/etc/resolv.conf resolv.conf: # This file was automatically generated by WSL. To stop automatic gen 阅读详情

相关推荐

导出库的版本_Windows下PaddleOCR在C++中的推理部署(CPU版本)CMake + VS2017

PaddleOCR是一个与OCR相关的开源项目,不仅支持超轻量级中文OCR预测模型,总模型仅8.6M(单模型支持中英文数字组合识别、竖排文本识别、长文本识别,其中检测模型DB(4.1M)+识别模型CRNN(4.5M)),而且提供多种文本检测训练算法(EAST、DB)和多种文本识别训练算法(Rosetta、CRNN、STAR-Net、RARE)。本文将教大家通过PaddleOCR(CPU版...

weixin_31304817的博客 1914

datax同步doris到DB2数据同步超时问题

datax同步doris查询超时

Jmayday 2022

从零配置Archery:手把手教你用Docker部署多数据库审核系统(MySQL/PostgreSQL/ClickHouse)

本文详细介绍了如何从零开始使用Docker部署Archery多数据库审核系统,涵盖MySQL、PostgreSQL和ClickHouse的配置与整合。文章提供了生产级Docker-compose配置、审核规则定制、工单流程设置以及企业微信通知集成等实战指南,帮助团队构建统一的企业级SQL审计平台,提升数据库操作规范与安全。

e4f5g6h7的博客 941

DataX报错问题汇总

datax报错

半桶水的博客 5019

轴承故障诊断——领域知识

幅域分析、频域分析及轴承方面的领域知识

qq_58516607的博客 3536

Mac用户解决WPS中的俄语显示红线问题(WPS添加外语拼写检查)

我所使用的WPS版本:AppleStore 下载的 MacOs版 3.3.0 首先,对于 在访达-应用程序中,找到WPS,右键-点击“显示包内容” 然后按照下图的索引目录(Contents\Resource\office6\dicts\spellcheck),最后进入一个叫“spellcheck”的文件夹 最后将下载好的字典包(例如上图中的 en_US就代表美式英语;ru_RU就代表俄语) 关于字典包资源下载,我在网上找到一个Google云盘,里面包含了法语,德语,西语,意大利语,葡萄牙.

qq_48159150的博客 7902

DataX、sqoop抽取TDSQL数据库中数据报Timeout的问题

由于此类问题虽然不常见,但是每次遇到排查都会花费大量的时间,整理整个case,供参考 背景: 客户报障他们只要一连接到TDSQL抽取数据,差不多10分钟左右就会出现超时中断,反复几次都不成功。连到MySQL却没有任何问题。 排查过程: 一、看到这个问题,确实比较懵,除了能看到客户用了我们的DCDB产品之外,不清楚发生了什么事。 首先和客户确认,他们用的什么工具做的数据抽取,反馈是DataX。先了解一下DataX是什么东东。 DataX 是一个异构数据源离线同步工具,致力于实现包括关系型数据库(MySQL、O

weixin_43872058的博客 2022

【异常】SpringCloud Gateway报错503 SERVICE_UNAVAILABLE “Unable to find instance for xxx-gen“

网关服务报错,如下。

奶爸的编程之路,也就一周冷个三天 4226

datax-web定时任务报错,调度失败请问下什么原因造成的?是并发数太高了吗?

>>>>>>>>>>触发调度<<<<<<<<<<<调度机器:192.168.1.145。以下是预警邮件很多任务调度失败。任务触发类型:Cron触发。执行器-注册方式:自动注册。阻塞处理策略:单机串行。

康师傅 1427

结构光之相移法+多频外差的数学原理推导

‍论文:基于数字光栅投影的结构光三维测量技术与系统研究 [博]作者:李中伟 华中科技大学 2007功能:相移法:多频外差(三频N步相移法)01 相移法图1 待写入投影仪的理想N步相移条纹通常对于 步相移来说,生成第 幅条纹图像(如图1所示)的公式如下:402 Payment Required其中::背景光强:调制强度:像素点横向坐标:相移值图2 相机拍摄到的实际 N ......

3D视觉工坊 1190

R语言使用rms包的psm函数拟合参数生存模型(parametric survival model)、并可视化列线图(诺模图、nomogram)

R语言使用rms包的psm函数拟合参数生存模型(parametric survival model)、并可视化列线图(诺模图、nomogram)

statistics+insight+vista+power 904

MySQL超时参数以及相关数据集成、DataX数据同步案例分享

一、背景 MySQL系统变量提供关于服务器的一些配置和能力信息,大部分变量可在mysqld服务进程启动时设置,部分变量可在mysqld服务进程运行时设置。合理的系统变量设值范围,是保障MySQL稳定提供服务的重要因素。本文主要描述MySQL数据库的超时timeout相关的一些系统变量,部分参数同程序应用中常见到的CommunicationsExcepti...

weixin_33964094的博客 1030

车载软件刷写工具vFlash --- 自动化接口(Automation API)应用简介

车载软件刷写工具vFlash --- 自动化接口(Automation API)应用简介

Soly_kun的博客 362

从socket中读取数据时使用超时JAVA技术文章

Java 1.4在Java API加入了非阻塞I/O(non-blocking I/O),不过Java 1.3和更早的版本都不支持这样的特性。然而,你可以用java.net.Socket类的超时属性来获得一些类似于非阻塞I/O的功能。  要使用超时属性,首先你要创建一个socket,然后设置你期望的超时时间。setSoTimeout方法有一个参数,这个int型参数指定了socket在抛出一个违例前

229

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

从socket中读取数据时使用超时 阅读次数5628

Java 1.4在Java API加入了非阻塞I/O(non-blocking I/O),不过Java1.3和更早的版本都不支持这样的特性。然而,你可以用java.net.Socket类的超时属性来获得一些类似于非阻塞I/O的功能。 要使用超时属性,首先你要创建一个socket,然后设置你期望的超时时间。setSoTimeout方法有一个参数,这个int型参数指定了socket在抛出

海纳百川的专栏 608

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

链接是否超时

/第二步:建立连接。//操作数据库第一步:找到驱动。//第三步:建立一个statement的对象。DriverManager.setLoginTimeout(3)//表示3秒;System.out.println("连接超时");System.out.println("读取超时");

mouzhengchunly的专栏 153

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Netty的超时机制

Netty超时机制学习 技术点描述 ReadTimeoutHandler读取数据超时处理 WriteTimeoutHandler写数据超时处理 IdleStateHandler状态空闲处理  通过以上三种方式,可以轻松实现SOCKET长连接的心跳包机制。 另要注意的是这里所说的超时是指逻辑上的超时,而非TCP连接超时。 实现方案 ReadTimeoutHandler,WriteTimeoutHa

网络 5014

java socket 被阻塞了_java socket长连接中解决read阻塞的3个办法

解决的方法有3个 :1 约定发送的数据长度,比如 http的 keepAlive 就是必须依赖这个的 Content-Length2 设置超时的时间,根据我的经验,只有在Socket级别设置才有效.Socket socket = new Socket(host,port);socket.setSoTimeout(100); // 如果超过100毫秒还没有数据,则抛出 SocketTimeoutEx...

weixin_39789399的博客 1054

python 安装第三方库,超时报错--Read timed out.

Traceback (most recent call last): File "/home/xiaoduc/.pyenv/versions/3.5.0/lib/python3.5/site-packages/pip/_vendor/requests/packages/urllib3/response.py", line 228, in _error_catcher yield File "/ho...

风的专栏 5274

Java之Socket上的Read操作阻塞问题

从Socket上读取对端发过来的数据一般有两种方法: 1)按照字节流读取 [java] view plain copy BufferedInputStream in = new BufferedInputStream(socket.getInputStream());   int r = -1;   List l = new LinkedL

Android Linux MCU VC++ 3358

Java中Socket上的Read操作阻塞问题

从Socket上读取对端发过来的数据一般有两种方法: 1)按照字节流读取 [java] view plaincopy BufferedInputStream in = new BufferedInputStream(socket.getInputStream());   int r = -1;   List l = new LinkedLi

yangzhao0001的博客 1133

java socketclient 换行_java网络编程之socket(2)

异步处理多客户端连接服务端上篇讲到的是服务端接收一个客户端的请求之后就结束了,不能再接收其他客户端的请求了,实际情况上我们希望服务端能够处理来自不同用户的请求。想到这里,或许我们可以用一个死循环,在循环体里面ServerSocket调用其accept方法试图接收来自客户端的连接请求。当没有接收到请求的时候,程序会在这里阻塞直到接收到来自客户端的连接请求,之后会跟当前建立好连接的客户端进行通信,完了...

weixin_34910772的博客 452
上一篇: 运行headless Java服务器
下一篇: 小弟最近从网站上下了一个JICQ 可是不知道怎么回事
java169
博客等级 码龄19年 27粉丝 2568原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值