fixed purging of expired workers in WorkerQueue

It seems that if first worker was alive than no checking was performed for all other workers and thus this can lead to a whole bunch of dead workers in queue.