Sobes.tech
Intern

O que é uma tarefa síncrona?

sobes.tech IA

Resposta da IA

Uma tarefa síncrona é uma tarefa cuja execução bloqueia o thread atual até à sua conclusão. Enquanto a tarefa síncrona não terminar, o thread principal não pode continuar.

Exemplos de uso em desenvolvimento iOS:

  • Leitura de um ficheiro do disco no thread principal.
  • Realizar uma requisição de rede usando URLSession.shared.dataTask(with:url) sem usar um manipulador de conclusão em outro thread.

Consequências do uso de tarefas síncronas no thread principal:

  • A interface de utilizador torna-se não responsiva ("congela").
  • É possível que o temporizador watchdog seja ativado e que a aplicação trave se a tarefa demorar demasiado.

Para realizar operações potencialmente longas, é preferível usar tarefas assíncronas para não bloquear o thread principal e manter a responsividade da aplicação.