2017.5.8

作者: 铁拳宝宝爱芝麻 | 来源:发表于2017-05-08 21:33 被阅读0次

公司的流程真是很长,弄了一上午流程审批,还没有通过,只能重头开始再来一遍流程审批。过期的制度就是这样,公司规模大的话,流程制度是必要的。有人说,中国的国企或者政府,制度是一流的,但是执行力却要大打折扣。这也是过期亟需改革的一个大的方面吧。


lua学习,看了一下迭代器和错误处理。
迭代器,for的泛型语义
for语句中,使用迭代器时,首先会有三种状态,分别是迭代器函数,恒定值和控制变量,先初始化这三个状态,然后通过恒定值和控制变量的初始值调用迭代器函数,如果第一个返回值不是 nil,那么将执行for的循环体,比如
<code>
for var1,var2,...varn in <expr>
do
statment
end
</code>
可以用下面的语句描述:
<code>
local _f, _s, _var = <expr> -- 分别是迭代器函数,恒定值和控制变量
while true do
local _var1, _var2, ... = _f(_s, _var)
_var = _var1
if _var == nil then
break;
end
statment
end
</code>


错误处理函数
assert(v, [, message])
返回出错信息如果 v 是 false或者 nil,message 是出错信息;否则,返回所有参数,如果 v 是一个函数调用,就是返回函数的所有返回结果

error(message, [, level])
return message as error message,level 表示的级别,意思就是如果是调用者的错误,比如调用者参数出现明显错误,那么将 level 设置为2,表示不是函数内部出现的问题,是调用者出现的问题

pcall(f, [, arg1, ...])
call function g with given arguments. An error inside f is not propagated, instead, pcall catches the error and returns a status code
status code 为真,表示没有错误,返回status code + 函数f的所有返回值
status code 为假,说明f 执行出错,返回status code + 错误信息


协同程序 coroutine
lua 中的协同程序的函数都放在一个 coroutine 的表中,协同程序有四种状态
挂起 suspend, coroutine.yield()
运行 running
死亡 dead,运行结束
正常 normal,当A唤醒B时,B为 running 状态,而A此时就是normal状态

coroutine.yield() 协同程序进入挂起装填
coroutine.resume 协同程序唤醒挂起的协同程序或者第一次运行

协同程序不同于线程,具有多个线程的程序同时能运行多个线程,但是具有多个协同程序的程序任意时刻都只能运行一个协同程序,并且正在执行的协同程序只有显示的调用 coroutine.yield() 挂起时,才能停止(也就是说,只能自己挂起自己),而协同程序之间是互相协作的运行,这一点非常重要,不像线程之间是相互独立的。

相关文章

  • 2017.5.8

    1.今天清理手机,视频配对命名,释放内存 2.早晨听了玫琳凯培训一个课题,还有两个课题需补课 3.开始有意识地注意...

  • 2017.5.8

    多少年之后才发现,曾经的那些不在乎,才是现在所想要的拥有。从擦肩而过到慢慢远离再到彻底失去,从懵懂无知到人情世故,...

  • 2017.5.8

    今天在这个三于六服装设计公司的最后一天,没想到这天来得这么快。 来这里上班,每天是带着疑惑迷茫来的,下班也是带着些...

  • 2017.5.8

    窗外雨声风声雷声 窗内躁动的心跳声

  • 2017.5.8

    1.“饿了就吃,想要就买,说走就走,喜欢就追……”一直以为很简单的事情,直到遇见你,我束手无策。 2.喜欢图书馆的...

  • 2017.5.8

    昨天终于回到上海,带着一个动不动就哼唧的孩子,真的是很累。昨天和今晚差点打不了卡,此刻我的脑子里就是一片昏...

  • 2017.5.8

    今天早上很效率,8点不到已经完成了穿衣、洗漱和早饭。他拿来一本青蛙弗洛格——佛洛格吓坏 了让我念。上来就指着“吓“...

  • 2017.5.8

    5分钟6,5分钟8,20分钟8.5。

  • 2017.5.8

    公司的流程真是很长,弄了一上午流程审批,还没有通过,只能重头开始再来一遍流程审批。过期的制度就是这样,公司规模大的...

  • 2017.5.8

    3NYU 商学 数学所 紫色:同性恋,基因 贩毒 nueoscience,神经学 旗子:火炬 分享:赤脚医生,老医...

网友评论

      本文标题:2017.5.8

      本文链接:https://www.haomeiwen.com/subject/boyvtxtx.html