Adding SyncLoop as a synchronization primitive