boost::asio是一个高性能的网络开发库,Windows下使用IOCP,Linux下使用epoll。与ACE不同的是,它并没有提供一个网络框架,而是采取组件的方式来提供应用接口。但是对于常见的情况,采用一个好用的框架还是能够简化开发过程,特别是asio的各个异步接口的用法都相当类似。 受到 SP Server 框架的影响,我使用asio大致实现了一个多线程的半异步半同步服务器框架,以下是利用它来实现一个Echo服务器: 1. 实现回调:
2. 一个单线程的Echo服务器:
1。缓冲区的管理与内存池的使用 2。为了保证Session的线程安全,必须要设置一个挂起状态。 还有一个好处,就是完全隔绝了asio的应用接口,不用再忍受asio漫长的编译时间了。代码就不贴在这里了,有兴趣的可以通过email 探讨。(说明,这里只提出一个思路,不再提供源代码,请各位见谅) |
利用boost::asio实现一个简单的服务器框架
最新推荐文章于 2022-08-29 16:18:16 发布