yasio is a multi-platform support and lightweight library with focus on asynchronous socket I/O for any client application, support windows & linux & apple & android & win10-universal.
- RAOL Mobile Game Project: Since the game is published on Tencent Games at 2018.10.17, it's run at millions of devices.
- x-studio IDE Project: The local LAN upgrade system is based on yasio.
- xlua: Integrate yasio to xlua, make the unity3d game project based on xlua can use yasio lua bindings APIs.
- Unreal Engine 4: Integrate yasio to unreal engine 4, make the ue4 game project yasio, lua will complete in the future, may based on Tencent's UnLua.
- Simplified Chinese: https://docs.yasio.org/
- English: https://docs.yasio.org/en/latest/ (Building)
g++ tests/tcp/main.cpp --std=c++11 -DYASIO_HEADER_ONLY -lpthread -I./ -o tcptest && ./tcptest
git clone https://github.com/yasio/yasio
cd yasio
git submodule update --init --recursive
cd build
# For macOS xcode, it's shoud be cmake .. -GXcode
cmake ..
# Use cmake command to build examples & tests,
# or open yasio.sln with visual studio(2013~2019 supported) at win32 platform
cmake --build . --config Debug
- Support IPv4/IPv6 network
- Support multi-connections at one thread
- Support high-resolution deadline timer
- Support unpack tcp packet internal, user do not need to care it
- Support lua bindings
- Support cocos2d-x jsb
- Support CocosCreator jsb2.0
- Support Unity3D
- Support Unreal Engine 4
- Support multicast
- Support ssl client with openssl
- Support async resolve with c-ares
- Support header only with YASIO_HEAD_ONLY=1 set at config.hpp or compiler flags