# async.cancel (Compartilhado)

> Para uma thread async deste recurso. Uma thread pausada é encerrada na hora; chamada na própria thread, ela para ali mesmo.

- **Plataforma**: MY Multiplayer (MYMP)
- **Tipo**: Função Lua
- **Lado**: Compartilhado
- **Categoria**: Tempo e assíncrono
- **URL**: https://wiki.mymp.gg/pt/async.cancel

## Sintaxe

```lua
bool async.cancel(any thread)
```

## Parâmetros

| Nome | Tipo | Descrição |
| --- | --- | --- |
| `thread` | `any` | Thread dada por `async.thread` ou `async.mutex`. |

## Retorno

`true` se parou a thread, `false` se ela não é uma thread async deste recurso ou já foi cancelada.

Uma thread cancelada não roda mais o seu `callback`.

## Exemplo

```lua
local countdown = async.thread(function()
    async.wait(10000)
    outputDebugString("o tempo acabou")
end)

addCommandHandler("stopcountdown", function()
    async.cancel(countdown)
end)
```

## Veja também

- [async.status (Compartilhado)](https://wiki.mymp.gg/pt/async.status.md): Diz em que estado está uma thread async deste recurso.
- [async.thread (Compartilhado)](https://wiki.mymp.gg/pt/async.thread.md): Roda uma função numa thread async nova, na hora. A chamada retorna quando a função termina ou faz a primeira pausa, como async.wait.
