我在 OpenWrt 裏找到一個小工具 uloop,一個簡單的 Event Loop Implementation,藏身在 libubox 裏。
uloop() 主要提供兩個功能,一個是簡單的 timer,可以設定在 timeout 後自動執行指定的 function,另一個是類似 exec 指令,可以執行外部程式,後面這個功能好像沒多大用處。uloop() 有 lua binding,所以可以在 lua 程式裏套用。
底下的程式示範 uloop() timer 的使用方法 (timer_demo.lua):
執行結果如下:
其中,t1 只跑一次,t2 每兩秒跑一次,而 t3 則不會跑,因為它被取消了。
0 意見:
張貼留言