This allows safer lock-free reads to be done on lists that never shrink in size. The main use-case for this is to allow servers to be added to a service without locking the service each time a new session is created. Synchronizing the memory before adding new components into a list guarantees that if a session reads from the list and sees the new list item, the memory pointed by the item is valid.