Lua 协程和线程区别
2024-09-06 10:18:20
协程就是协程,不是线程。
CPU执行单位是线程,不是什么协程。
协程,是同步执行,不是并行,只是切了一个上下文了,为你保存原来的上下文而已。
切到第二个协程时,原来的协程处于挂起状态。
这个特指lua的协程。
Unity的协程也是这么回事。
lua协程例子:
local function run(data)
print("co-body", 1, data.a)
print("co-body", 2, data.a)
print("co-body", 3, data.a)
coroutine.yield()
print("co-body", 4, data.a)
print("co-body", 5, data.a)
coroutine.yield()
end
local co = coroutine.create(run)
local data = {a=1}
coroutine.resume(co, data)
for i=1,5 do
print("main", i)
end
coroutine.resume(co, data)
运行结果:
co-body 1 1
co-body 2 1
co-body 3 1
main 1
main 2
main 3
main 4
main 5
co-body 4 1
co-body 5 1
最新文章
- [Altera]PLL仿真
- <;转>; jsp:include 乱码问题解决
- Odoo 路线规则实现机制浅析
- 观摩制作小游戏(js应用)
- 路径(keyPath)、键值编码(KVC)和键值观察(KVO)
- 关于LEA指令(单周期就可以做简单的算术计算)
- JavaScript学习笔记2-数组对象
- 'mysql' 不是内部或外部命令,也不是可运行的程序或批处理文件
- 安装淘宝镜像cnpm时出现问题及解决方案
- Build fails with an error: Execution failed for task &#39;:react-native-google-analytics-bridge:compileDebugJavaWithJavac&#39;.
- git将本地项目推送到远程仓库
- nginx 添加虚拟主机 支持php 伪静态
- [UOJ#276][清华集训2016]汽水[分数规划+点分治]
- Pig store用法举例
- HDU1598 并查集+贪心
- 非root权限 安装更新gcc
- 使用javascript随机生成斗地主玩家手牌
- SDOI2018R1划水记
- MVC之htmlhelper总结
- jsp---tomcat===》》内置对象
热门文章
- BZOJ 3626: [LNOI2014]LCA(树剖+差分+线段树)
- Tomcat debug 模式, Application一直reload,导致内存溢出
- C#-Api:身份证识别
- 6、 restful API
- [17]APUE:线程
- mysql分区管理语句
- windows下安装sass,以及常见错误和解决办法
- JSON Web Token (JWT)生成Token及解密实战。
- neo4j 基本概念和Cypher语句总结
- jquery中on绑定click事件在苹果手机中不起作用