networking - 如何处理 Rebol 3 方案中的超时时间

标签 networking rebol rebol3

在 Rebol 3 中启动异步 IO 事件系统的常用方法是在端口上等待。为了检查超时,方案中的一个值被添加到等待 block 。

wait [port timeout]

但是小电子邮件的默认超时可能不适用于多兆字节的文件。

处理此问题的最佳方法是什么?如果您仍在接收数据,是否可以在脚本接收数据时更新等待列表,以免不必要地超时?

最佳答案

我认为端口超时应该基于数据包计时触发,而不是完整请求。因此,将电子邮件的超时设置为 30 秒意味着您在 30 秒内没有收到数据包。

由于数据包往往很小,它们到达的速度很快,长时间未收到数据包将表明网络/服务器出现故障,您需要在此处获得超时。 (异常(exception)情况是发生数据包聚合时,但仍然不会有太多聚合,通常会出现长时间延迟。)

综上所述,我不确定它们是否在 R3 中实现。根据之前的评论,我想不会。网络系统是我为 R3 编写的第一批部分之一,它精简而简陋,但肯定需要一些注意。

关于networking - 如何处理 Rebol 3 方案中的超时时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14555961/

相关文章:

apache - 无法通过 UBUNTU 12.10 上的本地 IP 地址访问 Web 服务器

rebol - 将变量设置为当前脚本的文件名

parsing - 匹配PARSE中的自定义token

rebol - 如何解析简单的xml文件

unicode - 解码 UTF16 二进制文件最有效的方法是什么?

rebol - R3GUI - 如何设置 'area' 的大小

java - Netstat 用于单个连接?

networking - 每个 IP 地址限制 1 票?

javascript - 如何通过浏览器下载本地网络文件

rebol - 为什么 rebol 使用 https 返回错误