这些方法将被包含到任何 Active Job 对象中,为作业实例的序列化/反序列化和创建添加帮助程序。
方法
- D
- S
实例公共方法
deserialize(job_data) 链接
从使用 serialize
创建的哈希中创建一个新的作业实例
源代码: 显示 | 在 GitHub 上
# File activejob/lib/active_job/core.rb, line 64 def deserialize(job_data) job = job_data["job_class"].constantize.new job.deserialize(job_data) job end
set(options = {}) 链接
创建一个使用给定选项预配置的作业。您可以使用作业参数调用 perform_later 以使用预配置的选项将作业排队
选项
-
:wait
- 使用指定的延迟将作业排队 -
:wait_until
- 在指定的时间将作业排队 -
:queue
- 在指定的队列上将作业排队 -
:priority
- 使用指定的优先级将作业排队
示例
VideoJob.set(queue: :some_queue).perform_later(Video.last)
VideoJob.set(wait: 5.minutes).perform_later(Video.last)
VideoJob.set(wait_until: Time.now.tomorrow).perform_later(Video.last)
VideoJob.set(queue: :some_queue, wait: 5.minutes).perform_later(Video.last)
VideoJob.set(queue: :some_queue, wait_until: Time.now.tomorrow).perform_later(Video.last)
VideoJob.set(queue: :some_queue, wait: 5.minutes, priority: 10).perform_later(Video.last)
源代码: 显示 | 在 GitHub 上
# File activejob/lib/active_job/core.rb, line 88 def set(options = {}) ConfiguredJob.new(self, options) end