модуль ActiveJob::Enqueuing
Публичные методы класса
# File activejob/lib/active_job/enqueuing.rb, line 53 class_attribute :enqueue_after_transaction_commit, instance_accessor: false, instance_predicate: false, default: false
Определяет, откладывает ли выполнение задачи, запущенной внутри транзакции Active Record, до завершения транзакции.
Его можно задать для каждой задачи:
- true forces the job to be deferred. - false forces the job to be queued immediately.
Публичные методы экземпляра
# File activejob/lib/active_job/enqueuing.rb, line 112
def enqueue(options = {})
set(options)
self.successfully_enqueued = false
run_callbacks :enqueue do
raw_enqueue
end
if successfully_enqueued?
self
else
false
end
end Добавляет задачу в очередь для выполнения адаптером очереди.
Параметры
-
:wait- Добавляет задачу с указанной задержкой -
:wait_until- Добавляет задачу на указанное время -
:queue- Добавляет задачу в указанную очередь -
:priority- Добавляет задачу с указанным приоритетом
Примеры
my_job_instance.enqueue my_job_instance.enqueue wait: 5.minutes my_job_instance.enqueue queue: :important my_job_instance.enqueue wait_until: Date.tomorrow.midnight my_job_instance.enqueue priority: 10
© 2004–2021 David Heinemeier Hansson
Licensed under the MIT License.