doc: update readme

Update the intro blurb and spend a few more words on libuv's features.
This commit is contained in:
Bert Belder 2013-09-13 16:01:24 +02:00 committed by Ben Noordhuis
parent 717e0e5635
commit 581e8c9266

View File

@ -1,37 +1,37 @@
# libuv # libuv
libuv is a platform layer for [node.js][]. Its purpose is to abstract IOCP libuv is a multi-platform support library with a focus on asynchronous I/O. It
on Windows and epoll/kqueue/event ports/etc. on Unix systems. We intend to was primarily developed for use by [Node.js](http://node.js.org), but it's also
eventually contain all platform differences in this library. used by Mozilla's [Rust language](http://www.rust-lang.org/),
[Luvit](http://luvit.io/), [Julia](http://julialang.org/),
[pyuv](https://crate.io/packages/pyuv/), and others.
## Features ## Feature highlights
* Non-blocking TCP sockets * Full-featured event loop backed by epoll, kqueue, IOCP, event ports.
* Non-blocking named pipes * Asynchronous TCP and UDP sockets
* UDP * Asynchronous DNS resolution
* Timers * Asynchronous file and file system operations
* Child process spawning * File system events
* Asynchronous DNS via `uv_getaddrinfo`. * ANSI escape code controlled TTY
* Asynchronous file system APIs `uv_fs_*` * IPC with socket sharing, using Unix domain sockets or named pipes (Windows)
* High resolution time `uv_hrtime` * Child processes
* Current executable path look up `uv_exepath` * Thread pool
* Thread pool scheduling `uv_queue_work` * Signal handling
* ANSI escape code controlled TTY `uv_tty_t` * High resolution clock
* File system events using inotify, kqueue, event ports, * Threading and synchronization primitives
FSEvents and `ReadDirectoryChangesW`
* IPC and socket sharing between processes `uv_write2`
## Community ## Community