Node.js 的网络 IO 库扩展,libuv 1.0.0 发布
jopen 10年前
libuv 是 Node 的新跨平台抽象层,用于抽象 Windows 的 IOCP 及 Unix 的 libev。作者打算在这个库的包含所有平台的差异性。
特性:
非阻塞 TCP 套接字
非阻塞命名管道
UDP
定时器
子进程生成
通过 uv_getaddrinfo 实现异步 DNS
异步文件系统 API:uv_fs_*
高分辨率时间:uv_hrtime
正在运行程序路径查找:uv_exepath
线程池调度:uv_queue_work
TTY控制的ANSI转义代码: uv_tty_t
文件系统事件现在支持 inotify, ReadDirectoryChangesW 和 kqueue。很快会支持事件端口:uv_fs_event_t
进程间的 IPC 与套接字共享:uv_write2
已受支持的平台:
Microsoft Windows 操作系统,如 Windows XP SP2。使用 Visual Studio 或 MinGW 构建
Linux 2.6 使用 GCC 工具链
MacOS 使用 GCC 或 XCode 工具链
Solaris 121 或之后版本,使用 GCC 工具链
libuv 1.0.0 发布,此版本包括大约 3000 个 commits,已经开发了 4 年了,现在终于发布啦!
libuv 1.0.0 是个非常长的开发过程,自从 0.10.0 开始,但是现在终于发布了!
跟之前的 RC 版本并没有太大改进:
* doc: fix git/svn url for gyp repo in README (Emmanuel Odeke) * windows: fix fs_read with nbufs > 1 and offset (Unknown W. Brackets) * win: add missing IP_ADAPTER_UNICAST_ADDRESS_LH definition for MinGW (huxingyi) * doc: mention homebrew in README (Mikhail Mukovnikov) * doc: add learnuv workshop to README (Thorsten Lorenz) * doc: fix parameter name in uv_fs_access (Saúl Ibarra Corretgé) * unix: use cfmakeraw() for setting raw TTY mode (Yuri D'Elia) * win: fix uv_thread_self() (Alexis Campailla) * build: add x32 support to gyp build (Ben Noordhuis) * build: remove dtrace probes (Ben Noordhuis) * doc: fix link in misc.rst (Manos Nikolaidis) * mailmap: remove duplicated entries (Saúl Ibarra Corretgé) * gyp: fix comment regarding version info location (Saúl Ibarra Corretgé)
libuv 1.0.0 会维护一个稳定的 ABI 和向后兼容 API。
升级指南:http://docs.libuv.org/en/
更多内容请看发行说明。
来自:http://www.oschina.net/news/57237/libuv-1-0-0