модуль ActiveJob::Enqueuing
Публичные методы класса
# File activejob/lib/active_job/enqueuing.rb, line 54 class_attribute :enqueue_after_transaction_commit, instance_accessor: false, instance_predicate: false, default: :never
Определяет, откладывает ли отправка этой задачи в очередь при выполнении изнутри транзакции Active Record до завершения транзакции.
Его можно установить для каждой задачи:
- `:always` forces the job to be deferred. - `:never` forces the job to be queued immediately. - `:default` lets the queue adapter define the behavior (recommended).
Публичные методы экземпляра
# File activejob/lib/active_job/enqueuing.rb, line 113
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.