text 使用C#等待async而不是Unity coroutine
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了text 使用C#等待async而不是Unity coroutine相关的知识,希望对你有一定的参考价值。
async Task GetName()
{
// Delay 方法来自于.net 4.5
await Task.Delay(1000); // 返回值前面加 async 之后,方法里面就可以用await了
Debug.Log("Current Thread Id :"+ Thread.CurrentThread.ManagedThreadId);
Debug.Log("In antoher thread.....");
}
private async void Update()
{
if(Input.GetKeyUp(KeyCode.A))
{
Debug.Log($"main thread id:{Thread.CurrentThread.ManagedThreadId}");
await GetName();
// new Thread(Go).Start(); // .NET 1.0开始就有的
// Task.Factory.StartNew(Go); // .NET 4.0 引入了 TPL
await Task.Run(Go);
// Debug.Log("111 balabala. My Thread ID is :" + Thread.CurrentThread.ManagedThreadId);
// AsyncMethod();
//
// Debug.Log("222 balabala. My Thread ID is :" + Thread.CurrentThread.ManagedThreadId);
}
//Debug.Log(Time.realtimeSinceStartup);
}
以上是关于text 使用C#等待async而不是Unity coroutine的主要内容,如果未能解决你的问题,请参考以下文章
在C#中使用async而不等待?
C# 中的 C++ std::async 与异步/等待
跳过 SemaphoreSlim 而不是等待
彻底搞明白Unity-async-task特性
Unity3D-UGUI应用篇使用Text实现进度等待动画
如何在 Unity/C# WebGL 平台中调用 async/await JavaScript 函数?