batch = Sidekiq::Batch.new
batch.description = "Batch description (this is optional)"
batch.on(:success, MyCallback, :to => user.email)
batch.jobs do
rows.each { |row| RowWorker.perform_async(row) }
end
sleep(x_seconds)
batch.jobs do
rows.each { |row| RowWorker.perform_async(row) }
end
puts "Just started Batch #{batch.bid}"
在上面的代码中,有可能在添加下一个批处理作业之前调用回调。那么有没有办法通知sidekiq pro不要调用回调,因为批处理中的作业尚未添加?
答案 0 :(得分:2)
不,你不能这样做。完成第一个作业块后,您无法安全地向批处理添加更多作业,但该批处理中的另一个作业除外。