做了个,但效率跟if else区别不大
[Lua] 纯文本查看 复制代码 TaskStateTable =
{
0, "osInactive",
1, "osReady",
2, "osRunning",
3 , "osBlocked",
4, "osTerminated",
0x13, "osWaitDelay",
0x23, "osWaitDelay",
0x33, "osWaitDelay",
0x43, "osWaitThreadFlags",
0x53, "osWaitMutex",
0x63, "osWaitSem",
0x73, "osWaitMemPool",
0x83, "osWaitMsgGet",
0x93, "osWaitMsgPut",
}
function GetTaskState(Value)
local reStr
local i
for i=1,14,1 do
if(Value == TaskStateTable[2*i-1]) then
reStr = TaskStateTable[2*i]
print(reStr)
break
end
end
end
GetTaskState(0)
GetTaskState(1)
GetTaskState(2)
GetTaskState(3)
GetTaskState(4)
GetTaskState(0x13)
GetTaskState(0x23)
GetTaskState(0x33)
GetTaskState(0x43)
GetTaskState(0x53)
GetTaskState(0x63)
GetTaskState(0x73)
GetTaskState(0x83)
GetTaskState(0x93)
|