Korábban írtam egy bugyuta lua szkriptet, ami a magyarországon található közlekedési lámpa állapotátmeneteit volt hivatott szimulálni. Nagyszerű érzés, hogy nem sikerül a vermet túlcsordítani, de jó lenne, ha kicsit lassabban pörögne. Ekkor jön a képbe a sleep függvény. Mivel nem az ANSI C szabvány része, így natívan nem is tartalmazza a lua.
Kód
#include "lua.h"
#include "lauxlib.h"
#include "lualib.h"
int l_sleep(lua_State *L){
unsigned int sec = luaL_checknumber(L, 1);
sleep(sec);
return 1;
}
static const luaL_reg reg_sleep[] = {
{"sleep", l_sleep},
{NULL, NULL} // őrszemek
};
int luaopen_sleep(lua_State *L){
luaL_register(L, "io", reg_sleep);
return 1;
}
Fordítás:
cc -o sleep.so -shared sleep.c