Realm C++ SDK版本 v 2.2.0
|
公共类型 | |
枚举类 | 状态{ 活动、垂死、不活动、 waiting_for_access_token 、 已暂停 } |
枚举类 | connection_state {已断开连接, 正在连接,已连接} |
公共成员函数 | |
枚举状态 | state () const |
枚举 connection_state | connection_state () const |
void | wait_for_upload_completion (std::function< void( status )> &&callback) |
void | wait_for_download_completion (std::function< void( status )> &&callback) |
std::future< void > | wait_for_upload_completion () |
std::future< void > | wait_for_download_completion () |
void | pause () |
void | resume () |
void | reconnect () |
uint64_t | watch_connection_change (std::function< void(枚举 connection_state old_state, 枚举 connection_state new_state)> &&callback) |
void | unregister_connection_change_observer (uint64_t 令牌) |
操作符 std::weak_ptr< SyncSession > () | |
好友 | |
struct | inside::bridge::域 |
uint64_t 域::internal::bridge::sync_session::observe_connection_change | ( | std::function< void(枚举 connection_state old_state, 枚举 connection_state new_state)> && | callback | ) |
注册一个回调,当底层同步会话更改其连接状态时会调用该回调
void realm::internal::bridge::sync_session::pause | ( | ) |
暂时中止同步并断开与服务器的连接。
在调用resume
或关闭并重新打开 Realm 文件之前,该会话不会尝试连接到 Atlas App Services。
void 域::internal::bridge::sync_session::reconnect | ( | ) |
如果会话断开,则请求立即重新连接到服务器。
断开连接后,Realm 会以指数退避算法自动重新连接,而当可访问性处理程序报告网络状态变更时,该退避算法会被重置。 在某些情况下,应用程序可能希望跳过重新连接延迟,例如当应用程序收到背景唤醒通知时,这可以通过调用此方法来完成。 永远不需要调用此方法。
此方法是异步方法,只是跳过当前的重新连接延迟,因此在调用该方法后,连接状态通常仍会立即断开。
如果会话当前已连接,则无效。
void realm::internal::bridge::sync_session::resume | ( | ) |
暂停后恢复同步并重新连接到 Atlas App Services。
如果会话已处于活动状态或会话无效,则不执行此操作。 新创建的会话开始时处于“活动”状态,并且不需要恢复。
void 域::internal::bridge::sync_session::unregister_connection_change_observer | ( | uint64_t | token | ) |
取消注册以前注册的通知程序。 如果令牌无效,则此方法不执行任何操作。