phoenixsol / lua-epoll

Linux epoll interface for Lua

This URL has Read+Write access

name age message
file LICENSE Loading commit data...
file Makefile
file README
file lepoll.c
file test.lua
README

Lua-epoll -- A thin Lua wrapper around the epoll API.

Build:  type 'make'
Install:  type 'make install'
Use:

  require 'epoll'

  epoll_size = 4092 --approximate number of fds to be monitored
  num_events = 4092 --max number of events to be gathered per poll

  ep, errno, errmsg = epoll.init(epoll_size, num_events)

  status, errno, errmsg = ep:add(somefileno, epoll.EPOLLOUT)
  status, errno, errmsg = ep:mod(somefileno, epoll.EPOLLIN)
  status, errno, errmsg = ep:del(somefileno)

  atable, errno, errmsg = epoll:poll(timeout)

returned table looks like this: {fd=event_bitmask, ...}