version 1.2.4

This commit is contained in:
Bert Belder 2017-12-11 17:03:53 +01:00
commit 38ac088e7a
2 changed files with 13 additions and 12 deletions

View File

@ -3,8 +3,8 @@
[![][ci status badge]][ci status link] [![][ci status badge]][ci status link]
This library implements the [epoll][man epoll] API for Windows This library implements the [epoll][man epoll] API for Windows
applications. It attempts to be efficient, and to match the Linux API applications. It is fast and scalable, and it closely resembles the API
as semantics as closely as possible. and behavior of Linux' epoll.
## Rationale ## Rationale
@ -21,18 +21,19 @@ to run on Linux.
## Features ## Features
* can poll 100000s of sockets efficiently * Can poll 100000s of sockets efficiently.
* fully thread safe * Fully thread-safe.
* multiple threads can poll the same epoll port * Multiple threads can poll the same epoll port.
* sockets can be added to multiple epoll sets * Sockets can be added to multiple epoll sets.
* polling for `EPOLLIN`, `EPOLLOUT`, `EPOLLPRI`, `EPOLLRDHUP`, * All epoll events (`EPOLLIN`, `EPOLLOUT`, `EPOLLPRI`, `EPOLLRDHUP`)
`EPOLLHUP`, and `EPOLLERR` events are supported.
* `EPOLLONESTHOT` flag * Level-triggered and one-shot (`EPOLLONESTHOT`) modes are supported
* Trivial to embed: you need [only two files][dist].
## Limitations ## Limitations
* only works with sockets * Only works with sockets.
* some modes not suported: `EPOLLET`, `EPOLLEXCLUSIVE` * Edge-triggered (`EPOLLET`) mode isn't supported.
## How to use ## How to use

View File

@ -307,7 +307,7 @@ typedef intptr_t ssize_t;
#define inline __inline #define inline __inline
#endif #endif
#if !defined(static_assert) && !defined(_MSC_VER) #if (defined(__clang__) || defined(__GNUC__)) && !defined(static_assert)
/* Polyfill `static_assert` for some versions of clang and gcc. */ /* Polyfill `static_assert` for some versions of clang and gcc. */
#define static_assert(condition, message) typedef __attribute__( \ #define static_assert(condition, message) typedef __attribute__( \
(__unused__)) int __static_assert_##__LINE__[(condition) ? 1 : -1]; (__unused__)) int __static_assert_##__LINE__[(condition) ? 1 : -1];