У вас есть методы класса и методы экземпляра.Как и любой класс, определение методов класса начинается с self.
ActiveJob::Base.methods.select{|m| m == :perform}
=> []
ActiveJob::Base.instance_methods.select{|m| m == :perform}
=> [:perform]
В базовом классе нет метода perfom, но в методах экземпляра есть один метод perfom.
Я думаю, чтовы спрашиваете, выполняются ли задания классом или экземпляром этого класса.Видя, что только instace_methods включает: execute, я бы сказал, что ActiveJobs запускаются как экземпляры.Так что вы должны иметь возможность использовать переменные экземпляра без конфликтов потоков.