【问题标题】:Using ActionController::Live is sleep required?使用 ActionController::Live 是否需要睡眠?
【发布时间】:2016-05-17 22:02:07
【问题描述】:

我按照Rails reference 将一些数据流式传输到客户端。

Sleep 有必要吗,因为我到处都看到了 Sleep 的用法? Rails 是否在内部使用 Sleep in Live 来流式传输数据?

【问题讨论】:

  • 我的回答是否解决了您的问题?您还想了解更多信息吗?

标签: ruby-on-rails phusion


【解决方案1】:

Rails 中的sleep 函数用于提供指定时间长度的延迟。在列出的情况下,sleep 1 在循环中的每次迭代之后提供了一个短暂的暂停(大约一秒),如下

response.stream.write "hello world\n"

所以这不是完全必要的,但它可以在更平滑的时间范围内间隔输出,而不是一次输出全部。

【讨论】:

  • 谢谢彼得,当sleep 不存在时,我看到流媒体有时会失败。当我们流式传输大量数据时会看到这种情况。它失败表现为进程挂起和流停止。如果我添加具有任何值的sleep,则流式传输会顺利进行,不会出现任何问题。
猜你喜欢
  • 2013-11-10
  • 1970-01-01
  • 1970-01-01
  • 2013-09-15
  • 2014-09-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多