首页 > 其他 > 详细

协同程序

时间:2015-01-22 19:53:12      阅读:213      评论:0      收藏:0      [点我收藏+]

 


--[[
协同程序的四种状态
挂起(suspended)、运行(running)、死亡(dead)和正常(normal)

status
yield --挂起程序

coroutine.create(function(a, b, c) --coroutine.resume(co, 1, 2, 3) 分别把1,2,3传递给a,b,c
  print("co", a, b, c)
end)
coroutine.create(function()
  return 6, 7 --coroutine.resume(co)并返回第3个值,第一个为执行是否成功,后面是6,7
end)

coroutine.create(function(a, b)
  coroutine.yield(a+1, b+1) --coroutine.resume(co, 3,4)挂起协同同学,并返回第3个值,第一个为执行是否成功,后面是a+1, b+1
end)
--]]

 


co = coroutine.create(function()
  for i = 1, 10 do
    print("co", i)
    coroutine.yield()
  end
end)

print(co)

print(coroutine.status(co))

coroutine.resume(co)

 

协同程序

原文:http://www.cnblogs.com/vagaband/p/4242442.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!