Includes the perform_later method for job initialization.

Methods

Instance Public methods

perform_later(...)

Push a job onto the queue. By default the arguments must be either String, Integer, Float, NilClass, TrueClass, FalseClass, BigDecimal, Symbol, Date, Time, DateTime, ActiveSupport::TimeWithZone, ActiveSupport::Duration, Hash, ActiveSupport::HashWithIndifferentAccess, Array, Range, or GlobalID::Identification instances, although this can be extended by adding custom serializers.

Returns an instance of the job class queued with arguments available in Job#arguments or false if the enqueue did not succeed.

After the attempted enqueue, the job will be yielded to an optional block.

📝 Source code
# File activejob/lib/active_job/enqueuing.rb, line 58
      def perform_later(...)
        job = job_or_instantiate(...)
        enqueue_result = job.enqueue

        yield job if block_given?

        enqueue_result
      end
🔎 See on GitHub

Instance Private methods

job_or_instantiate(*args)

📝 Source code
# File activejob/lib/active_job/enqueuing.rb, line 68
        def job_or_instantiate(*args) # :doc:
          args.first.is_a?(self) ? args.first : new(*args)
        end
🔎 See on GitHub