Well the purpose of the function is just to obtain and hold a lock on a job.  Am I missing something?