Load balancing. Why not use priority queues?
You are correct that using a priority queue is a good idea.  It doesn't give an optimal answer though.  (Assuming that what you are trying to optimize is the time that the last processor finishes executing the last job.)  This scheduling problem is NP-complete, and the priority queue based method gives an answer that is within a factor of 2 of optimal.  See, for example, http://www.cs.princeton.edu/courses/archive/spr05/cos423/lectures/11approx-alg.pdf.  The wikipedia page on Job Shop Scheduling also gives some information.