Isn't it the case that only one thread should run anyway? Is the synchronise useful?
If it's there to avoid the weird case where two threads were running the same runnable, wouldn't synchronising `run()` achieve the same thing?