Why did you choose to `@synchronize` the calls to `completeSignal`, which already does synchronization?

_Moved from commit comment._