加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – Delayed_job:如何使用handle_asynchronously处理函数?

发布时间:2020-12-16 21:44:16 所属栏目:百科 来源:网络整理
导读:功能是: def createuser(name,pass,time) puts name,timeend 我尝试: handle_asynchronously :createuser("a","b","c") 并得到一个错误:语法错误,意外'(‘,期待keyword_end 谢谢. ===编辑=== 北京的japen和web服务器中的用户数据库.所以我用这种方式创建
功能是:
def createuser(name,pass,time)
   puts name,time
end

我尝试:

handle_asynchronously :createuser("a","b","c")

并得到一个错误:语法错误,意外'(‘,期待keyword_end

谢谢.

===编辑===

北京的japen和web服务器中的用户数据库.所以我用这种方式创建一个用户.

def createuser(name,time)
   Net::HTTP.get(URI.parse("http://www.example.net/builduser.php?hao=#{name}&mi=#{pass}&da=#{time}"))
end

解决方法

您不需要将参数传递给handle_asynchronously方法,只是说您的方法应该始终传递给delayed_job.

所以在你的例子中:

def create_user(name,time)
  puts name,time
end
handle_asynchronously :create_user

完全符合你的需要.
你打电话的时候

create_user('john','foo',Time.now)

与召唤是一回事

delay.create_user('john',Time.now)

我只是设置了一个测试应用程序来完成这个以测试答案,这里是delayed_job序列化的可执行处理程序:

--- !ruby/struct:Delayed::PerformableMethod
object: !ruby/ActiveRecord:User
attributes: 
   name: 
   pass:
   created_at:
   updated_at: 
   method_name: :create_user_without_delay
     args: 
       - John
       - foo
       - 2011-03-19 10:45:40.290526 -04:00

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读