UniTask.Create
时间: 2023-09-04 08:10:21 浏览: 78
UniTask.Create是Unity3D的一个异步任务创建工具,用于创建异步任务并在Unity中进行管理和使用。它可以用于对异步操作的封装,例如网络请求、文件读写等。UniTask.Create返回一个UniTask对象,可以使用await关键字对其进行等待,以确保任务完成后再继续执行后续代码。它还提供了一些扩展方法,例如UniTask.Delay用于延迟一段时间后再执行后续代码。
相关问题
UniTask.Create用法
UniTask.Create有多种用法,以下是其中几种常见的用法:
1. 使用异步委托创建UniTask
```csharp
async UniTask<int> MyAsyncMethod()
{
await UniTask.Yield(); // 等待一帧
return 1;
}
UniTask<int> task = UniTask.Create<int>(async () =>
{
return await MyAsyncMethod();
});
```
2. 使用Task创建UniTask
```csharp
Task<int> task = Task.Run(() => 1);
UniTask<int> uniTask = UniTask.Create<int>(task);
```
3. 直接创建UniTask
```csharp
UniTask uniTask = UniTask.Create(async () =>
{
await UniTask.Delay(1000);
Debug.Log("Hello World!");
});
```
在这些用法中,UniTask.Create的参数都是异步委托、Task或直接创建的异步操作,返回值是一个UniTask对象。可以使用await关键字等待UniTask完成,例如:
```csharp
await uniTask;
```
阅读全文