使用ActionController :: Live是否需要睡眠?

问题描述:

我跟着Rails reference将一些数据传输到客户端。使用ActionController :: Live是否需要睡眠?

睡眠的必要性,因为我已经看到睡眠的用法到处都是? Rails在内部是否使用Sleep来流式传输数据?

+0

我的回答是否解决了您的问题?你想要什么额外的信息吗? –

Rails中的sleep函数用于提供指定时间的延迟。在这种情况下上市,它看起来像sleep 1被提供在循环每次迭代之后经过短暂的停顿(大约一秒),以下

response.stream.write "hello world\n" 

所以它不是完全必要的,但它将成为太空跨平滑输出时间框架,而不是一次完成整批产品。

+0

感谢彼得,有时我看到流式传输失败时,“睡眠”不在那里。当我们流式传输大量数据时就会看到这一点。它的失败表现在进程挂起和流式停止。 如果我添加任何值的“睡眠”,流传输顺利进行,没有任何问题。 –