From f223463f12315654ba78ae8268dc617a92869a0f Mon Sep 17 00:00:00 2001 From: Bert Belder Date: Sun, 3 Dec 2017 23:50:32 +0100 Subject: [PATCH] doc: externalize links --- doc/README.md | 24 ++++++++++++++---------- 1 file changed, 14 insertions(+), 10 deletions(-) diff --git a/doc/README.md b/doc/README.md index b0d5b88..ccc2ffb 100644 --- a/doc/README.md +++ b/doc/README.md @@ -1,18 +1,16 @@ # wepoll - epoll for windows -This library implements the -[epoll](http://man7.org/linux/man-pages/man7/epoll.7.html) API for -Windows applications. It attempts to be efficient, and to match the -Linux API and as closely as possible. +This library implements the [epoll][man epoll] API for Windows +applications. It attempts to be efficient, and to match the Linux API +as semantics as closely as possible. ## Rationale Unlike Linux, OS X, and many other operating systems, Windows doesn't have a good API for receiving socket state notifications. It only supports the `select` and `WSAPoll` APIs, but they -[don't scale](https://daniel.haxx.se/docs/poll-vs-select.html) -and suffer from -[other issues](https://daniel.haxx.se/blog/2012/10/10/wsapoll-is-broken/). +[don't scale][select scale] and suffer from +[other issues][wsapoll broken]. Using I/O completion ports isn't always practical when software is designed to be cross-platform. Wepoll offers an alternative that is @@ -64,7 +62,7 @@ HANDLE epoll_create1(int flags); * `size` is ignored but most be greater than zero. * `flags` must be zero as there are no supported flags. * Returns `INVALID_HANDLE_VALUE` on failure. -* [man page](http://man7.org/linux/man-pages/man2/epoll_create.2.html) +* [man page][man epoll_create] ### epoll_close @@ -94,7 +92,7 @@ int epoll_ctl(HANDLE ephnd, wepoll may not be able to detect this until the next call to `epoll_wait()`. * TODO: expand -* [man page](http://man7.org/linux/man-pages/man2/epoll_ctl.2.html) +* [man page][man epoll_ctl] ### epoll_wait @@ -111,5 +109,11 @@ int epoll_wait(HANDLE ephnd, - 0 when a timeout occurs - ≥1 the number of evens received * TODO: expand -* [man page](http://man7.org/linux/man-pages/man2/epoll_wait.2.html) +* [man page][man epoll_wait] +[man epoll]: http://man7.org/linux/man-pages/man7/epoll.7.html +[man epoll_create]: http://man7.org/linux/man-pages/man2/epoll_create.2.html +[man epoll_ctl]: http://man7.org/linux/man-pages/man2/epoll_ctl.2.html +[man epoll_wait]: http://man7.org/linux/man-pages/man2/epoll_wait.2.html +[select scale]: https://daniel.haxx.se/docs/poll-vs-select.html +[wsapoll broken]: https://daniel.haxx.se/blog/2012/10/10/wsapoll-is-broken/