2014-09-07 06:15:10 UTC
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
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: