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 maisDeclaraçã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 maisDeclaraçã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, chamarinvalidate()
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 maisDeclaraçã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.
Veja
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.
Veja
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.