the syncing property is to let outside code check the sync state withouth having to poke the internal implementation (lock in this case)