These classes have 3 different types of methods. Synchronous, asynchronous (callback), and asynchronous (async/await).
Synchronous methods doesn't have any prefix or suffix. Example:
string packet = Read();
Callback asynchronous have an Begin/End prefix accepts a method as an argument. Example:
private void OnReceivedPacket(IAsyncResult res)
string packet = socket.EndRead(res);
Async/await asynchonous have Async suffix. Example:
string packet = await socket.ReadAsync();
You can use my C# PCL as a starting point for a client implementation. https://github.com/mhackerx/dpcl/tree/master/C%23
Karth123 Wrote:Twisted provides abstract classes, which you subclass, then you override the functions, e.g https://twistedmatrix.com/documents/cur ... eclient.py
There may be a library that does that, but I recommend doing one specifically for what you need.