0Pricing
Swift Academy · Aula

Task e cancelamento de Task

Crie tarefas estruturadas, verifique cancelamentos e implemente cancelamento cooperativo.

Task e cancelamento de Task é uma aula grátis de Swift Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Swift Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Swift Academy inclui 4 aulas no total.

Boas-vindas

`Task` é a unidade fundamental de concorrência no Swift. Ela executa trabalho assíncrono e oferece cancelamento estruturado para gerenciar recursos de forma adequada.

Criando uma Task

```swift Task { let user = try await fetchUser(id: 1) print(user.name) } ``` `Task` cria um novo contexto de execução concorrente.

Prioridade de Task

```swift Task(priority: .userInitiated) { await loadContent() } Task(priority: .background) { await prefetch() } Task(priority: .utility) { await syncData() } ```

Task.cancel()

```swift var task: Task? func startLoading() { task = Task { await heavyWork() } } func stopLoading() { task?.cancel() } ```

Verificando o cancelamento

```swift func process() async throws { for item in items { try Task.checkCancellation() // throws if cancelled process(item) } } ```

Task.isCancelled

```swift func stream() async { while !Task.isCancelled { let data = await fetch() emit(data) } } ```

Tarefas desanexadas

```swift Task.detached(priority: .background) { // NOT inheriting actor context or priority of the caller await heavyBackgroundWork() } ```

withTaskCancellationHandler

```swift await withTaskCancellationHandler { await doWork() } onCancel: { cleanup() } ```

Valores retornados por Task

```swift let task = Task { 6 * 7 } let result = await task.value // 42 ```

Espera

```swift try await Task.sleep(for: .seconds(2)) // Swift 5.7+ try await Task.sleep(nanoseconds: 1_000_000_000) // 1 second ```

Verificação rápida

Qual método lança um `CancellationError` se a tarefa tiver sido cancelada?

Recapitulação

Principais conclusões: • `Task { }` — cria uma unidade de trabalho assíncrono • `task.cancel()` + `Task.checkCancellation()` — cancelamento cooperativo • `Task.isCancelled` — verificação no estilo de consulta periódica • `Task.detached` — sem herança de ator ou de prioridade • `Task.sleep(for:)` — atraso sem bloqueio A seguir: async let.

Perguntas Frequentes

A aula “Task e cancelamento de Task” é grátis?

Sim — o texto completo de “Task e cancelamento de Task” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Swift Academy, atualize para CoddyKit PRO. O curso de Swift Academy inclui 4 aulas no total.

O que vou aprender em “Task e cancelamento de Task”?

Crie tarefas estruturadas, verifique cancelamentos e implemente cancelamento cooperativo. Você pratica Swift Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Swift Academy?

Nenhuma experiência prévia é necessária. Swift Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Task e cancelamento de Task”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Swift Academy?

Sim. Cada aula de Swift Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Sintaxe async/await e chamada de funções assíncronas
  2. Task e cancelamento de Task
  3. async let e tarefas filhas concorrentes
  4. Atores: proteção do estado mutável compartilhado
← Voltar para Swift Academy