qiocp is a windows ftp server sample to perform asynchronous operations in synchronous manner. It bases on coroutine macros. This significantly simplifies the writing of network applications or other nontrivial concurrent algorithms. This sample demonstrates how using the coroutines allows to achieve described simplifications. The code itself looks like synchronous invocations while internally it uses asynchronous scheduling.
- Only one thread.
- No mutexs. No synchronization. No security.
- Basic network support.
- UTF-8 messages. Please, set Lucida Console font in console properties.
- Passive mode only.
- For personal use with Totalcmd client.
Some of the ideas was inspired by fashion on coroutine implemention in future c++.
- Supported compilers:
- GCC (MinGW)
- MSVC
MinGW version runs faster.
Stackless coroutine macro idea is described in http://www.chiark.greenend.org.uk/~sgtatham/coroutines.html