I have implemented resque queuing system in my rails app. I want to know the flow of resque job starting from enqueue to removed out from queue.

The traditional work flow, along with method used from gem is,
1. Resque enqueue the job(Resque::Job.create) ,
2. Job calls 'perform' method of class(Resque::Job.perform), and
3. Resque removes job from the queue.

I debugged gem to find out the method used in step 3, but I couldn't find it. Methods Resque::Job.destroy, Resque::Job.dequeue are not responsible for this task, as I debugged. Can anyone tell me the method using to remove job from queue. Please note that, I do NOT want to remove job explicitly, I want typical resque method which removes job from queue.