동기화 세션 일시 중단 또는 다시 시작 - .NET SDK
이 페이지의 내용
동기화된 영역 을 열면 동기화 세션 이 시작됩니다. 특정 세션에 대한 동기화를 일시 중지하려면 세션에서 Stop() 메서드를 호출하면 됩니다.
그런 다음 일시 중지된 세션에서 Start() 메서드를 호출하면 동기화 세션이 다시 시작됩니다.
참고
각 세션은 독립적입니다.
동기화 세션을 일시 중지했다가 다시 시작하려는 각 영역에 대해 Stop()
및 Start()
메서드를 수동으로 호출해야 합니다. 한 세션의 동기화 상태는 열려 있는 다른 세션에 영향을 주지 않습니다.
다음 코드 블록에서는 Stop()
및 Start()
메서드를 호출하는 방법을 보여 줍니다.
realm = Realm.GetInstance(config); session = realm.SyncSession; session.Stop(); //later... session.Start();
동기화 세션을 일시 중지해야 하는 경우
대부분의 애플리케이션은 동기화 세션을 수동으로 일시 중지했다가 다시 시작할 필요가 없습니다. 그러나 동기화 세션을 일시 중지하거나 일시 중지해야 하는 몇 가지 상황이 있습니다.
사용자가 특정 조치를 취한 후에만 동기화하려는 경우
하루 중 특정 시간에만 동기화하려는 경우
네트워크 연결이 좋지 않을 때 동기화를 시도하고 싶지 않은 경우
동기화 세션을 명시적으로 강제로 연결하려는 경우
네트워크 연결이 좋지 않은 경우 계속해서 네트워크 연결을 설정하려고 하면 사용자의 장치 배터리가 소모될 수 있습니다.
동기화 세션을 연결하도록 명시적으로 강제하는 경우는 가장 일반적으로 일정 시간 동안 오프라인 상태인 것과 관련이 있습니다. 동기화 클라이언트는 연결을 시도하지만 실패 시 지수 백오프 상태가 됩니다. 클라이언트가 오랫동안 오프라인 상태였다가 즉시 다시 연결되지 않을 수 있습니다. 동기화 세션을 일시 중지했다가 다시 시작하면 명시적으로 연결이 강제로 적용됩니다.
동기화 세션을 일시 중지할 때는 다음 사항에 유의하세요.
클라이언트가 클라이언트 최대 오프라인 시간 보다 오래 오프라인 상태일 수 있는 경우 클라이언트는 동기화를 다시 시작할 수 없으며 클라이언트 재설정을 수행해야 합니다.
동기화 세션을 일시 중지하면 양쪽 방향에서 모두 일시 중지됩니다. 앱이 기기에서 수행하는 변경 사항은 백엔드 와 동기화되지 않으며, 백엔드 또는 다른 기기에서 변경한 데이터는 기기에 동기화되지 않습니다. 업로드만 일시 중지 또는 다운로드만 일시 중지할 수 있는 방법은 없습니다.
클라이언트가 백엔드와의 동기화를 영구적으로 중지하도록 하려면 동기화 세션을 일시 중지하지 마세요. 동기화를 영구적으로 중지하려면 동기화된 영역의 콘텐츠를 동기화되지 않은 영역에 복사하고 클라이언트에서 동기화되지 않은 영역을 사용합니다.
무기한 또는 월 및 연도 단위의 시간 범위 동안 동기화를 중지하기 위해 동기화를 일시 중지 하지 마세요 . 이 사용 사례에 맞게 기능이 설계되거나 테스트되지 않았습니다. 이러한 방식으로 사용하면 다양한 문제가 발생할 수 있습니다.