c#异步编程async await
2024-09-01 11:13:40
可以代替协程了
但是需要.net4 版本
unity2017以上版本可以用了
再也可以不用蛋疼的没有返回值的协程了
//异步编程,和Task一起用
async void TestAsync(){
//等待2秒
await Task.Delay();
int a = ;
while (a < )
{
//空等待
await Task.Yield();//相当于 yield return null
a++;
print(a);
} print("haha");
}
新例子
void Start()
{
//读取excel
//GameReadExcel("/Test/Excel/testExcel.xlsx"); //测试异步编程
TestAsync();//建立异步任务
tcs.SetResult(true);//控制任务完成,不然的话await会一直等待,这句就是设置了Task的返回值,设置了就代表任务完成了,也拿到值了
} async void TestAsync()
{
await MyTestTask();
Debug.Log("xxxx");
} private TaskCompletionSource<bool> tcs;
Task<bool> MyTestTask()
{
tcs = new TaskCompletionSource<bool>();
Debug.Log("测试task方法");
return tcs.Task;
}
更多参考:https://blogs.msdn.microsoft.com/appconsult/2017/08/29/unity-coroutine-tap-zh-cn/
最新文章
- Sass初使用
- mac brew install redis 报错
- webservice 实现json模式
- Windows 2012 R2图标以及字体颜色发生变化更改成默认设置
- 浅析SqlServer简单参数化模式下对sql语句自动参数化处理以及执行计划重用
- Divide and conquer:Showstopper(POJ 3484)
- XAML概览 1(译自JeremyBytes.com)
- 浏览器的CSS Hacks
- 从XML文件乱码问题,探寻其背后的原理
- 安装Theano
- OSGi解决的问题
- 【.NET Core项目实战-统一认证平台】第七章 网关篇-自定义客户端限流
- java集合类学习笔记1
- WINAPI方式在windows不同缩放比下取得正确的分辨率
- go 利用orm简单实现接口分布式锁
- windows下配置host不生效问题
- eclipse 中配置php的 XDebug调试
- 【独家】终生受用的Redis高可用技术解决方案大全
- sas 变量类型转换
- linux centos6 yum 安装lamp
热门文章
- oracle 非sys用户创建新用户 授权后 plsql看不到视图
- DLL的概念、dll导出类(转贴)
- ConcurrentDictionary 与 Dictionary
- Nexys4 DDR MIG控制器引脚文件
- stderr和stdout(printf、fprintf、sprintf)(转)
- hdu 1542/1255 Atlantis/覆盖的面积
- JComboBox组件的列表实时更新
- “全栈2019”Java第二十章:按位与、按位或、异或、反码、位运算
- maven+eclipse+ssm 环境搭建和启动
- LAMPer 技能树