We know:
(1) epoll is synchronous, based on user query/system notify. A while loop is used to call all woke up fds.
(2) boost::asio declares itself to be "asynchronous", but its implementation on linux is using epoll.
My question is: how can you implement "asyn" using a "syn" system call? Unless you use some kernel/system supported aio interface, right?
Please help to correct my confusions. Thanks!