# YarnTask

Struct in [Yarn.Unity](/3.1/api/csharp/yarn.unity.md)

Inherits from `System.ValueType`

## Summary

```csharp
public partial struct YarnTask
```

## Methods

| Name                                                                                                                                                             | Description                                                                                                                                    |
| ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------- |
| [Delay(int,CancellationToken)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.delay-2.md)                                                  |                                                                                                                                                |
| [Delay(TimeSpan,CancellationToken)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.delay-1.md)                                             | Creates a [YarnTask](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1.md) that delays for the time indicated by `timeSpan` , and then returns. |
| [Forget()](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.forget-1.md)                                                                     |                                                                                                                                                |
| [FromResult(T)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.fromresult-2.md)                                                            |                                                                                                                                                |
| [GetAwaiter()](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.getawaiter-1.md)                                                             |                                                                                                                                                |
| [IsCompleted()](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.iscompleted-1.md)                                                           |                                                                                                                                                |
| [IsCompletedSuccessfully()](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.iscompletedsuccessfully-1.md)                                   |                                                                                                                                                |
| [SuppressCancellationThrow()](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.suppresscancellationthrow.md)                                 |                                                                                                                                                |
| [ToCoroutine(Func)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.tocoroutine.md)                                                         |                                                                                                                                                |
| [WaitForAsyncOperation(AsyncOperationHandle,CancellationToken)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.waitforasyncoperation-1.md) |                                                                                                                                                |
| [WaitForAsyncOperation(AsyncOperationHandle,CancellationToken)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.waitforasyncoperation-2.md) |                                                                                                                                                |
| [WaitUntil(System.Func,System.Threading.CancellationToken)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.waituntil.md)                   |                                                                                                                                                |
| [WaitUntilCanceled(System.Threading.CancellationToken)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.waituntilcanceled.md)               |                                                                                                                                                |
| [WhenAll(IEnumerable)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.whenall-2.md)                                                        |                                                                                                                                                |
| [WhenAll(YarnTask\[\])](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.whenall-1.md)                                                       |                                                                                                                                                |
| [WhenAll(IEnumerable\<YarnTask>)](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.whenall-4.md)                                             |                                                                                                                                                |
| [WhenAll(YarnTask\[\])](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.whenall-3.md)                                                       |                                                                                                                                                |
| [Yield()](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.yield.md)                                                                         |                                                                                                                                                |

## Properties

| Name                                                                                                   | Description |
| ------------------------------------------------------------------------------------------------------ | ----------- |
| [CompletedTask](/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1/yarn.unity.yarntask.completedtask.md) |             |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.yarnspinner.dev/3.1/api/csharp/yarn.unity/yarn.unity.yarntask-1.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
