SyncSession

public extension SyncSession
  • O estado atual da sessão representado por um objeto de sessão.

    Veja

    RLMSyncSessionState

    Declaração

    Swift

    typealias State = RLMSyncSessionState
  • O estado atual da conexão de uma sessão de sincronização.

    Veja

    RLMSyncConnectionState

    Declaração

    Swift

    typealias ConnectionState = RLMSyncConnectionState
  • A direção da transferência (upload ou download) rastreada por um determinado bloco de notificação de progresso.

    Os bloqueios de notificações de progresso podem ser registrados em sessões se seu aplicativo desejar ser informado quantos bytes foram carregados ou baixados, por exemplo, para mostrar IUs de indicadores de progresso.

    Veja mais

    Declaração

    Swift

    enum ProgressDirection : Sendable
  • O comportamento desejado de um bloco de notificação de progresso.

    Os bloqueios de notificações de progresso podem ser registrados em sessões se seu aplicativo desejar ser informado quantos bytes foram carregados ou baixados, por exemplo, para mostrar IUs de indicadores de progresso.

    Veja mais

    Declaração

    Swift

    enum ProgressMode : Sendable
  • Um token correspondente a um bloco de notificação de progresso.

    Chame invalidate() no token para interromper as notificações. Se o bloqueio de notificações já tiver sido interrompido automaticamente, chamar invalidate() não fará nada. invalidate() deve ser chamado antes que o token seja destruído.

    Declaração

    Swift

    typealias ProgressNotificationToken = RLMProgressNotificationToken
  • Uma estrutura encapsulando informações de progresso.

    Veja mais

    Declaração

    Swift

    struct Progress : Sendable
  • Registre um bloqueio de notificação de progresso.

    Se a sessão já tiver recebido informações de progresso do subsistema de sincronização, o bloco será chamado imediatamente. Caso contrário, ele será chamado assim que as informações de progresso estiverem disponíveis.

    Vários blocos podem ser registrados com a mesma sessão de uma só vez. Cada bloco será invocado em uma fila lateral dedicada a notificações de progresso.

    O token retornado por este método deve ser retido enquanto as notificações de progresso forem desejadas, e o método invalidate() deve ser chamado nele quando as notificações não forem mais necessárias e antes que o token seja destruído.

    Se nenhum token for retornado, o bloco de notificação nunca será chamado novamente. Existem várias razões pelas quais isso pode ser verdade. Se a sessão tiver passado por um erro fatal, ela não aceitará bloqueios de notificações de progresso. Se o bloco foi configurado no modo forCurrentlyOutstandingWork , mas não há progresso adicional para relatar (por exemplo, o número de bytes transferíveis e bytes transferidos são iguais), o bloco não será chamado novamente.

    Declaração

    Swift

    @preconcurrency
    func addProgressNotification(for direction: ProgressDirection,
                                 mode: ProgressMode,
                                 block: @Sendable @escaping (Progress) -> Void) -> ProgressNotificationToken?

    Parâmetros

    direction

    A direção de transferência (upload ou download) para acompanhar neste bloco de notificação de progresso.

    mode

    O comportamento desejado desse bloco de notificação de progresso.

    block

    O bloco para invocar quando as notificações estiverem disponíveis.

    Valor de retorno

    Um token que deve ser mantido pelo tempo que você quiser que as notificações sejam entregues.

  • Aguarde a conclusão dos uploads ou downloads pendentes ou a expiração da sessão e envie a chamada de resposta para a fila especificada.

    Aviso

    Este método não se média a ser usado, exceto em casos especiais, especialmente para testes.

    Declaração

    Swift

    func wait(for direction: ProgressDirection,
              queue: DispatchQueue? = nil,
              block: @Sendable @escaping (Error?) -> Void)

    Parâmetros

    direction

    A direção de transferência (upload ou download) para aguardar.

    queue

    A fila para enviar a chamada de resposta.

    block

    O bloco a ser invocado quando a espera for concluída.

  • wait(for:) Assíncrono

    Aguarde a conclusão dos uploads ou downloads pendentes ou a expiração da sessão.

    Aviso

    Este método não se média a ser usado, exceto em casos especiais, especialmente para testes.

    Declaração

    Swift

    @available(macOS 10.15, iOS 13.0, tvOS 13.0, watchOS 6.0, *)
    func wait(for direction: ProgressDirection) async throws

    Parâmetros

    direction

    A direção de transferência (upload ou download) para aguardar.