poco c++和Boost库的对比分析

POCO的优点: 

1) boost更好的线程库,特别是一个活动的方法的实现,并且还可设置线程的优先级。 

2) 比 boost:asio更全面的网络库。但是boost:asio也是一个非常好的网络库。 

3) 包含了一些Boost所不包含的功能,像XML,数据库接口等。 

4) Boost相比,集成度更高,是更加统一的一个库。 

5) Pococ++代码更清洁,现代和易理解。对不是模板编程专家的人来说,POCO的代码比大多数Boost库容易理解得多 

6) 可以在许多平台上使用 

POCO的缺点: 

1) 文档有限。但这一定程度上是因为代码的容易理解。 

2) Boost相比用户社群小得多。 

3) 有多少能集成进C++标准是个问题。而Boost在这方面不是个问题。 

 

Boost的特点:

  Boost是高质量的库,但它不是个框架。 

  Boost:asio处理高并发的效率还可以。单连接吞吐稍微弱点。如果选用,最好封装好,别让boost代码吞噬你的代码,那样最后不可收拾。 

  asiowindows下效率是最好的。基本接近自己在iocp上开发的效率。 

  在linux下,他默认选用epoll, 但中间为了做了层stream cache, 效率稍有损失。而且他的epoll规则用的不太合理, 可以自己修改他的代码,达到自己的需求。 

  在freebsd下,他默认是select的,要自己修改他的代码条件编译,才可以支持kqueue


本文出自 “孙国栋” 博客,请务必保留此出处http://qtlinux.blog.51cto.com/3052744/1701905

发布了17 篇原创文章 · 获赞 22 · 访问量 10万+

猜你喜欢

转载自blog.csdn.net/u013255206/article/details/64130109