multi-lock-queue

optimally parallelize tasks that lock on potentially intersecting sets of ids