Avoid blocking the eventloop for too long.
There are two places where we primarily write to disk:
- When the synchronizer writes to the messagequeue
- When the pipeline writes to the main store
To avoid blocking for too long we "yield" back to the eventloop
whenever that happened, because otherwise we will completely block
the evenloop until the entire sync/pipeline processing operation is
complete (and especially for the sync that can take a long while).