libuv 1.4.0

libuv 1.4.0

测试已测试
Lang语言 CC
许可证 自定义
发布最后发布2015年2月

James Ide 维护。



libuv 1.4.0

  • 作者
  • 文件

概述

libuv 是一个多平台支持库,专注于异步 I/O。它主要是为 Node.js 开发的,但它也被 LuvitJuliapyuv 以及 其他 使用。

特性亮点

  • 由 epoll、kqueue、IOCP、事件端口支持的完整功能的事件循环。

  • 异步 TCP 和 UDP 套接字

  • 异步 DNS 解析

  • 异步文件和文件系统操作

  • 文件系统事件

  • 受 ANSI 转义码控制的 TTY

  • 通过 Unix 域套接字或命名管道 (Windows) 使用套接字共享进行 IPC

  • 子进程

  • 线程池

  • 信号处理

  • 高分辨率时钟

  • 线程和同步原语

版本

从版本 1.0.0 开始,libuv 遵循 语义版本控制 方案。API 变更和向后兼容性规则由 SemVer 指示。libuv 将在主要版本间保持稳定 ABIs。

社区

文档

官方 API 文档

位于 docs/ 子目录中。它使用 Sphinx 框架,这使得可以以多种格式构建文档。

显示不同的支持构建选项

$ make help

构建为 HTML 文档

$ make html

构建为 man 页面

$ make man

构建为 ePub

$ make epub

注意:Windows 用户需要使用 make.bat 而不是 plain 'make'。

文档可在以下网址在线浏览 here

其他资源

构建说明

对于GCC,有两种构建方法:通过autotools或通过GYP。GYP是一个元构建系统,可以生成MSVS、Makefile和XCode后端。它最适合集成到其他项目中。

使用autotools构建

$ sh autogen.sh
$ ./configure
$ make
$ make check
$ make install

Windows

首先,必须安装Python 2.6或2.7,因为它需要GYP。如果python不在您的路径中,设置环境变量PYTHON为其位置。例如:set PYTHON=C:\Python27\python.exe

要使用Visual Studio构建,请启动git shell(例如Cmd或PowerShell),并运行vcbuild.bat,这将检查GYP代码到build/gyp,并生成uv.sln以及相关的项目文件。

要让GYP为其他系统生成构建脚本,请手动将GYP检查到项目树中

$ git clone https://chromium.googlesource.com/external/gyp.git build/gyp
OR
$ svn co http://gyp.googlecode.com/svn/trunk build/gyp

Unix

运行

$ ./gyp_uv.py -f make
$ make -C out

运行./gyp_uv.py -f make -Dtarget_arch=x32以构建[x32][]二进制文件。

OS X

运行

$ ./gyp_uv.py -f xcode
$ xcodebuild -ARCHS="x86_64" -project uv.xcodeproj \
     -configuration Release -target All

使用Homebrew

$ brew install --HEAD libuv

注意:OS X用户

请确保在"ARCHS"标志中指定要构建的架构。您可以使用空格分隔来指定多个(例如:"x86_64 i386")。

Android

运行

$ source ./android-configure NDK_PATH gyp
$ make -C out

对UNIX用户的提醒:使用-D_LARGEFILE_SOURCE-D_FILE_OFFSET_BITS=64编译您的项目。GYP构建会自动处理。

运行测试

运行

$ ./gyp_uv.py -f make
$ make -C out
$ ./out/Debug/run-tests

支持的平台

自Windows XP SP2以来的Microsoft Windows操作系统。可以使用Visual Studio或MinGW构建。如果您没有完整的Visual Studio许可证,请考虑使用Visual Studio Express 2010或更高版本。

使用GCC工具链的Linux。

使用GCC或XCode工具链的OS X。

Solaris 121及其以后版本使用GCC工具链。

修补程序

请参阅贡献指南