Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
eae19033
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
eae19033
编写于
7月 30, 2012
作者:
F
Francesco Rodriguez
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix typo in metal/live [ci skip]
上级
4ac81de5
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
6 addition
and
6 deletion
+6
-6
actionpack/lib/action_controller/metal/live.rb
actionpack/lib/action_controller/metal/live.rb
+6
-6
未找到文件。
actionpack/lib/action_controller/metal/live.rb
浏览文件 @
eae19033
...
@@ -3,7 +3,7 @@
...
@@ -3,7 +3,7 @@
module
ActionController
# :nodoc:
module
ActionController
# :nodoc:
# Mix this module in to your controller, and all actions in that controller
# Mix this module in to your controller, and all actions in that controller
# will be able to stream data to the client as it's written.
For example:
# will be able to stream data to the client as it's written.
#
#
# class MyController < ActionController::Base
# class MyController < ActionController::Base
# include ActionController::Live
# include ActionController::Live
...
@@ -18,17 +18,17 @@ module ActionController # :nodoc:
...
@@ -18,17 +18,17 @@ module ActionController # :nodoc:
# end
# end
# end
# end
#
#
# There are a few caveats with this use.
You *cannot* write headers after the
# There are a few caveats with this use. You *cannot* write headers after the
# response has been committed (Response#committed? will return truthy).
# response has been committed (Response#committed? will return truthy).
# Calling +write+ or +close+ on the response stream will cause the response
# Calling +write+ or +close+ on the response stream will cause the response
# object to be committed.
Make sure all headers are set before calling write
# object to be committed. Make sure all headers are set before calling write
# or close on your stream.
# or close on your stream.
#
#
# You *must* call close on your stream when you're finished, otherwise the
# You *must* call close on your stream when you're finished, otherwise the
# socket may be left open forever.
# socket may be left open forever.
#
#
# The final caveat is that you actions are executed in a separate thread than
# The final caveat is that you
r
actions are executed in a separate thread than
# the main thread.
Make sure your actions are thread safe, and this shouldn't
# the main thread. Make sure your actions are thread safe, and this shouldn't
# be a problem (don't share state across threads, etc).
# be a problem (don't share state across threads, etc).
module
Live
module
Live
class
Buffer
<
ActionDispatch
::
Response
::
Buffer
# :nodoc:
class
Buffer
<
ActionDispatch
::
Response
::
Buffer
# :nodoc:
...
@@ -100,7 +100,7 @@ def process(name)
...
@@ -100,7 +100,7 @@ def process(name)
t1
=
Thread
.
current
t1
=
Thread
.
current
locals
=
t1
.
keys
.
map
{
|
key
|
[
key
,
t1
[
key
]]
}
locals
=
t1
.
keys
.
map
{
|
key
|
[
key
,
t1
[
key
]]
}
# This processes the action in a child thread.
It lets us return the
# This processes the action in a child thread. It lets us return the
# response code and headers back up the rack stack, and still process
# response code and headers back up the rack stack, and still process
# the body in parallel with sending data to the client
# the body in parallel with sending data to the client
Thread
.
new
{
Thread
.
new
{
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录