Skip to content

Latest commit

 

History

History
71 lines (57 loc) · 3.86 KB

README_EN.md

File metadata and controls

71 lines (57 loc) · 3.86 KB

yasio logo

YASIO - Yet Another asynchronous Socket I/O.

Build Status Windows Build Status Release 996.icu LICENSE GitHub stars GitHub forks Language grade: C/C++ Total alerts Last Commit

Supported Platforms Powered

简体中文

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.

Showcase

Integration Demos

  • 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.

Docomentation

Simple run tcptest with g++

g++ tests/tcp/main.cpp --std=c++11 -DYASIO_HEADER_ONLY -lpthread -I./ -o tcptest && ./tcptest

Build more examples with cmake

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

Features:

  • 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

Core framework

image