libuv (Unicorn Velociraptor Library) — багато-платформова C-бібліотека, що забезпечує підтримку асинхронний ввід/вивід на основі цикла події. Вона підтримує epoll(4), kqueue(2), Windows IOCP та Sun Solaris event port. Бібліотека передусім спроектована для використання в Node.js, але застосовується також в інших програмних продуктах. Спочатку це була абстракція навколо libev або Microsoft IOCP, оскільки libev підтримувала тільки select(2) і не підтримувала poll(2) та IOCP у Windows. У версії node-v0.9.0 libuv залежність на libev була вилучена.

Особливості Особливості libuv включають Повноцінний цикл події, підтверджений epoll, kqueue, IOCP, event ports Асинхронні TCP та UDP сокети Асинхронні DNS запити Асинхронні файлові операції та операції з файловою системою Події файлової системи ANSI escape code під управлінням TTY IPC з поділом сокетів, використовуючи Unix domain socket або іменовані потоки (Windows) Породжені процеси Пул нитей Обробка сигналів Високоточний таймер Примітиви нитей та синхронізації

Виноски

Посилання

An Introduction to libuv libuv API documentation libuv design overview