From Friday, April 19th (11:00 PM CDT) through Saturday, April 20th (2:00 PM CDT), 2024, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.



为什么在创建 TCP 监听连接的时候会收到大概60秒的错误号 Error 60?



主要软件:
主要软件版本: 8.2
主要软件修正版本: N/A
次要软件: LabVIEW Modules>>LabVIEW Real-Time Module

问题: 我在特定的 TCP 端口上建立一个 TCP 监听的时候遇到了一个问题。 如果关闭这个连接,再创建一个新的监听的时候。 即使在创建一个新的监听前用 TCP Close 关闭了前面的连接 ID , 仍然会返回错误号 60 (指定的网络地址正在被使用中), 会持续一段时间。

解答: 解决的办法与一个连接建立一个监听器相对应,是为每一个需要程序监听的端口创建一个监听器。连接可能被打开或者关闭, 但是如果要再使用监听器的话,应该一直保持它原来的样子。 把创建监听器 VI 放到循环外面通史解决这个问题, 请参考附件中的图片作为例子。

TCP端口监听 VI (TCP Listen), 位于 Data Communication»Protocols»TCP 面板上, 可以检测一个监听器是否还存在于指定的端口上, 并且能自动地重复使用同一个监听器。

不同的操作系统平台对端口设置的响应也是不同的,例如:SO_REUSEADDR, 所以这种问题有可能在一些操作系统平台上存在,但在另外一些系统中正常。 正确地使用创建监听器 VI 能够避免没有必要的等待时间。

相关链接:

附件:


Create Listener Loop.jpg - Create Listener Loop.jpg



报告日期: 04/05/2007
最近更新: 10/23/2008
文档编号: 484DI6XL