Oops, I stripped just a little much from the job daemon code in the previous comment. You'll want to add a little line before the ->launchJob() method is called:
<?php
while(count($this->currentJobs) >= $this->maxProcesses){
echo "Maximum children allowed, waiting...\n";
sleep(1);
}