Lua 协程

1人阅读 评论(0) 收藏 举报
分类:

例程

function func()
	print("hello")
end

co = coroutine.create(func)
print(coroutine.status(co))	-- 查看协程状态
coroutine.resume(co)
运行结果
suspended

hello

例程

function func(a,b)
	print(a,b)
end

co = coroutine.create(func)
coroutine.resume(co,1,2)	-- 给协程函数传递参数
运行结果

1 2

例程

function func1()
	while true do
		local state, v1, v2 = coroutine.resume(co2, 10, 20)
		print(state, v1, v2)
	end
end

function func2()
	while true do
		local p1, p2 = coroutine.yield(5,6) -- 暂停位置继续执行
		print(p1, p2)
	end
end

co1 = coroutine.create(func1)
co2 = coroutine.create(func2)
coroutine.resume(co1)	-- 给协程函数传递参数
运行结果
true 5 6
10 20
true 5 6
10 20

查看评论

Lua协程(一)

Lua协程(一) 本文主要涉及Lua协程是如何工作的,并不涉及具体
  • corfox_liu
  • corfox_liu
  • 2016-03-31 14:07:35
  • 1586

明明白白lua的协程(coroutine)

协程和多线程下的线程类似:有自己的堆栈,自己的局部变量,有自己的指令指针,但是和其他协程程序共享全局变量等信息。线程和协程的主要不同在于:多处理器的情况下,概念上来说多线程是同时运行多个线程,而协程是...
  • booirror
  • booirror
  • 2014-10-05 23:07:11
  • 23828

【深入Lua】理解Lua中最强大的特性-coroutine(协程)

http://my.oschina.net/wangxuanyihaha/blog/186401 coroutine基础 Lua所支持的协程全称被称作协同式多线程(collabor...
  • sharemyfree
  • sharemyfree
  • 2015-08-12 11:42:42
  • 8439

lua学习笔记13:协程详解和举例

一、coroutine.create创建协程 参数是协程的主函数,返回一个thread对象 co = coroutine.create(function() print("coroutine e...
  • xufeng0991
  • xufeng0991
  • 2014-10-08 16:10:40
  • 2012

lua协程的一个应用

在游戏中有一个openDialog  和  openNetDialog,前者的话,直接就弹出界面了,不管你加载数据了没有。后者等数据加载完毕才会显示出来。 --分步打开对话框 --网络消息回来后需要...
  • themagickeyjianan
  • themagickeyjianan
  • 2016-07-20 16:43:55
  • 878

lua 在unity 中的协程使用

最近尝试在unity中用上lua。 而其中必然会遇到的一个问题就是
  • maybe_xxh
  • maybe_xxh
  • 2014-04-14 15:43:24
  • 2195

lua协程的使用列子分析

handle = coroutine.create(function (arg1,arge2) local start = 0 print(arg1,arg2) while true ...
  • qweewqpkn
  • qweewqpkn
  • 2015-06-30 11:46:06
  • 1493

Lua中的协程

coroutine.create - 创建协程函数 coroutine.create 用于创建一个新的协程,它只有一个以函数形式传入的参数,该函数是协程的主函数,它的代码是协程所需执行的内容 co =...
  • Q838352961
  • Q838352961
  • 2015-11-11 17:29:27
  • 431

Lua协程(coroutine)的基本知识

有一个概念叫做coroutine, 也就是协程。协程究竟是什么呢,正式一点的说法: wiki : 协程是一种程序组件,是由子例程(过程、函数、例程、方法、子程序)的概念泛化而来的, ...
  • David_Dai_1108
  • David_Dai_1108
  • 2016-04-21 00:29:43
  • 1108

Lua的多任务机制——协程(coroutine)

    并发是现实世界的本质特征,而聪明的计算机科学家用来模拟并发的技术手段便是多任务机制。大致上有这么两种多任务技术,一种是抢占式多任务(preemptive multitasking),它让操作系...
  • soloist
  • soloist
  • 2005-03-24 22:37:00
  • 33885
    个人资料
    持之以恒
    等级:
    访问量: 733
    积分: 577
    排名: 9万+
    文章存档
    最新评论