Sobes.tech
Junior — Middle

Em que situações é recomendado usar GCD (Grand Central Dispatch) para gerenciar tarefas em aplicações iOS ou macOS?

sobes.tech IA

Resposta da IA

GCD (Grand Central Dispatch) é recomendado para usar nas seguintes situações:

  • Para executar tarefas em segundo plano, para não bloquear o thread principal e não prejudicar a capacidade de resposta da interface.
  • Para executar várias tarefas independentes em paralelo, o que permite aumentar o desempenho.
  • Para organizar filas de tarefas com diferentes prioridades (por exemplo, tarefas de usuário, operações em segundo plano).
  • Para sincronizar o acesso a recursos compartilhados usando filas serializadas, para evitar condições de corrida.

Exemplo de uso do GCD para executar uma tarefa em segundo plano e atualizar a interface no thread principal:

DispatchQueue.global(qos: .background).async {
    // Operação longa
    let result = heavyCalculation()
    DispatchQueue.main.async {
        // Atualização da UI
        self.label.text = "Resultado: \(result)"
    }
}