Quando e por que você deve usar o método synchronize () do NSUserDefaults?
Então, observei a documentação da apple sobre o método synchronize () do NSUserDefaults. Veja abaixo para referência:
https://developer.apple.com/reference/foundation/userdefaults/1414005-synchronize
A página atualmente lê:
Como esse método é chamado automaticamente em intervalos periódicos, use-o apenas se não puder esperar a sincronização automática (por exemplo, se o aplicativo estiver prestes a sair) ou se desejar atualizar os padrões do usuário para o que está no disco, embora você não fez nenhuma alteração.
No entanto, o que ainda não entendo é quando esse método deve ser chamado? Por exemplo, deve ser chamado sempre que o usuário altera as configurações do aplicativo? Ou devo apenas confiar que a API de plano de fundo vai lidar com isso? E a saída da visualização imediatamente após uma alteração nas configurações da memória resulta na perda dessa alteração?
Além disso, quando uma falha na chamada de sincronização () pode resultar na alteração incorreta das configurações do usuário?
Além disso, qual é o custo (desempenho, memória ou não) de chamar esse método? Eu sei que isso envolve a leitura e gravação de / para o disco, mas isso exige muito esforço nos telefones?