eminfedar / async-sockets-cpp

Simple thread-based asynchronous TCP & UDP Socket classes in C++.
MIT License
368 stars 74 forks source link
asynchronous-sockets cpp simple socket tcp thread udp

Asynchronous Sockets for C++

Simple, multithread-based(not thread safe), non-blocking asynchronous Client-Server classes in C++ for TCP & UDP. Creates a thread for every connection. Use mutexes or atomic variables to provide thread-safe functions.

// Initialize a tcp socket.
TCPSocket tcpSocket;

// Connect to the host.
tcpSocket.Connect("127.0.0.1", 8888, [&] {
    cout << "Connected to the server successfully." << endl;

    // Send String:
    tcpSocket.Send("Hello Server!");
});

Super Easy!

CPU & RAM Usages (with single tcp connection & with single udp server + client): Lightweight

Lightweight!

Examples:

Examples You can compile all the examples by just going in the examples/ directory and run make in terminal:

Supported Platforms: