2016-07-02 1 views
0

나는 영역 스위프트에서는, RealmCollectionChange 변경된 객체를 포함 할 것으로 보인다 https://realm.io/docs/swift/latest/#realm-notificationsRealmCollectionChange를 사용하여 데이터를 서버로 다시 동기화 할 수 있습니까?

가있는 것으로 나타났습니다. 해당 알림 블록을 사용하여 데이터를 백 엔드 데이터베이스에 다시 동기화하는 코드를 추가 할 수 있습니까? 알림 블록이 기본 대기열에서 실행 중입니까?

답변

1

제공된 알림 메커니즘을 사용하여 변경 내용을 서버에 전파 할 수 있습니다. 그러나 서버에 대한 요청이 서버에 응답하면 새로운 변경 사항이 발생하지 않도록해야합니다. 그렇지 않으면 관련 문서 절인 User-Driven Updates에서도 볼 수 있듯이 새로운 업데이트에 대해 지속적으로 알릴 수있는 상황에 처할 수 있습니다.

알림 블록은 추가 한 스레드에서 실행됩니다. 하지만이 API는 런 루프가 필요한 영역을 자동 업데이트하는 데만 사용할 수 있습니다. 전용 백그라운드 스레드에서 자신을 추가로 실행하지 않으면 기본적으로 주 스레드 만 실행 루프를 갖습니다.

동기화는 간단하지 않은 문제이며 이러한 알림 만 사용해도 문제 공간에 관련된 모든 문제에 대한 완전한 해결책을 얻을 수는 없습니다.

+0

예, 그 문제도 나타났습니다. 일반적인 사용 사례는 멀티 장치 동기화입니다. 실제로는 매우 까다 롭습니다. – dickyj

관련 문제