lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]


On Sat, 25 Jan 2020 at 07:08, Sean Conner <sean@conman.org> wrote:
>
> > The C library for Cqueues contains a proper event driven library written
> > ground up by William Ahern for use in Lua. It works with poll, epoll,
> > kqueues and whatever-the-heck Solaris uses. It *doesn't* support IOCP for
> > Windows. If we can add IOCP support then we have a superb socket library
> > for all platforms. I found a library stuffed inside another project that
> > claimed to be an epoll wrapper for IOCP. I can dig the info up if you like.
>
>   I want to keep the event driver module from the network module.  Granted,
> event drivers are mostly used for network applications, but there are times
> when you need them sans networking, such as dealing with character devices
> like serial ports or terminal IO.
>
>   A module like Cqueues is more of a framework than a library.  If there was
> a separate event module, then frameworks like Cqueues, lua-ev or turbo could
> gain access to the best underlying event structure for a given operating
> system.  Of the five non-framework event modules I"ve found, there's a bit
> of overlap, but no real consensus.  I've avoided looking at frameworks, but
> I think I need to look at them as well.
>

Hi, libuv is a hugely popular library in this area due to its use in
Node JS. There are already some Lua wrappers for libuv such as
https://github.com/luvit/luv and https://github.com/luvit/luvi.
The advantage of libuv over a homegrown one is that it is battle
tested and relied upon by a large number of people.

Regards