lua中的sleep實現

2022-07-11 20:09:16 字數 978 閱讀 2763

這篇文章主要介紹了lua中實現sleep函式功能的4種方法,本文講解了在乙個死迴圈中設定乙個跳出條件方法、呼叫系統的sleep函式法、windows下ping命令法、socket庫中select函式法4種方法,需要的朋友可以參考下

乙個不幸的訊息是lua中沒有內建sleep函式,我們需要diy。有4種方法可以實現sleep函式,如下:

方法1

複製****如下:

--在乙個死迴圈中設定乙個跳出條件,但是這樣的做法會占用大量cpu資源,強烈不推薦使用哦

function sleep(n)

local t0 = os.clock()

while os.clock() - t0 <= n do end

end方法2

複製****如下:

--呼叫系統的sleep函式,不消耗cpu,但是windows系統中沒有內建這個命令(如果你又安裝cygwin神馬的也行)。推薦在linux系統中使用該方法

function sleep(n)

os.execute("sleep " .. n)

end方法3

複製****如下:

--雖然windows沒有內建sleep命令,但是我們可以稍微利用下ping命令的性質

function sleep(n)

if n > 0 then os.execute("ping -n " .. tonumber(n + 1) .. " localhost > nul") end

end方法4

複製****如下:

--使用socket庫中select函式,可以傳遞0.1給n,使得休眠的時間精度達到毫秒級別。

‍require("socket")

function sleep(n)

socket.select(nil, nil, n)

end

Lua中實現sleep函式功能的4種方法

這篇文章主要介紹了lua中實現sleep函式功能的4種方法,本文講解了在乙個死迴圈中設定乙個跳出條件方法 呼叫系統的sleep函式法 windows下ping命令法 socket庫中select函式法4種方法,需要的朋友可以參考下 乙個不幸的訊息是lua中沒有內建sleep函式,我們需要diy。有4...

Lua中實現sleep函式功能的4種方法

乙個不幸的訊息是lua中沒有內建sleep函式,我們需要diy。有4種方法可以實現sleep函式,如下 方法1複製 如下 在乙個死迴圈中設定乙個跳出條件,但是這樣的做法會占用大量cpu資源,強烈不推薦使用哦 function sleep n local t0 os.cl while os.clock...

Lua中棧的實現

棧結構為先進後出型別,filo,類似於彈夾 它的特點在於只允許在棧頂進行插入和刪除操作,另一端為棧底 乙個棧主要有以下幾個要素 lua中只有乙個資料結構,就是table,所以我們肯定要利用表以及元表來實現乙個stack結構 下面就針對以上理清的要素進行分析 local stack local tin...