Rather than spawning two processes five times, to maximize the likelihood of reproducing the race, perhaps we should spawn ten processes once and ensure that only one process took ownership of the lock?  I'd also add a small (1 second?) sleep right before the call to `@lock.lock` in the child processes so that they're all spun up by the time we try to lock the file (to maximize the likelihood of reproducing the race condition).