Hi A few years ago we had hit a problem of calling a synchronous (blocking) legacy API call in an application designed to be asynchronous and non-blocking. There wasn't a simple solution to this problem other than to do a custom implementation based on worker threads.
So, I created a new library C++ GExecutor which makes it easy to build any hybrid asynchronous and synchronous application without having to do a custom implementation with worker threads or multi-threading. I saw there were ready made solutions in Java and Python but nothing was available for C++ or C. I am posting this so others can benefit if they are faced with synchronous operations within event loop or using libevent in multi-threaded environment. It currently supports both libevent and boost::asio based event loops. Having libevent was great help to us in rapidly developing high performance network application. Here is the link to the source: https://github.com/cppexecutor/gexecutor cheers! Gaurav -- Gaurav Rastogi [email protected] https://github.com/cppexecutor/gexecutor
