现在的位置: 首页 > 自动控制 > 工业·编程 > 正文

Poco vs Boost

2019-09-08 20:54 工业·编程 ⁄ 共 601字 ⁄ 字号 暂无评论

POCO的优点: 

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

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

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

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

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

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

POCO的缺点: 

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

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

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

许多POCO的用户把POCO和Boost一起并用。 

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

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

asio在windows下效率是最好的。 基本接近自己在iocp上开发的效率。 在linux下, 他默认选用epoll, 但中间为了做了层stream cache, 效率稍有损失。 而且他的epoll规则用的不太合理, 可以自己修改他的代码, 达到自己的需求。

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

给我留言

留言无头像?