进度条与线程我有时间采取任务在我的控制器,我要触发我认为一个简单的进度条/进度状态。更改视图 - Rails中
在我的控制器我有类似
threads = []
total.times do |x|
Thread.new {
the_time_taking_task(x)
#Something here to trigger the progressbar in the view
}
end
threads.each { |aThread| aThread.join }
render :action => 'some_action'
我不能把一个呈现在那里,因为它抛出一个双重渲染错误。 我试图把渲染,并返回那里,我得到了“return can't jump across threads
”错误
我试图渲染,因为它似乎是我的控制器可以跟查看的唯一途径。我的方法错了吗?
希望在通过电话
<div style="width: <%= (percent_val)%>px; ">
请咨询应用进度条宽度认为简单的东西是这样的。
任何长时间运行的任务应该作为后台进程运行(异步和非阻塞)。正如@ shingara所说,使用delayed_job或其它类似的。我发现delayed_job是迄今为止最容易实现的。检查delayed_job上的railscast。 – 2010-07-07 13:01:50