任何人做的boost :: ASIO的性能分析? [英] Has anyone done a performance analysis of boost::asio?

查看:533
本文介绍了任何人做的boost :: ASIO的性能分析?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要插座般的本地IPC。我用命名管道和重叠IO上的窗户,我想重写应用程序,以提高:: ASIO,以便它可以使用UNIX域套接字为好。

I require socket-like local IPC. I used named pipes and overlapped IO on windows and I want to rewrite the application to boost::ASIO so that it can use UNIX domain sockets as well.

我最近审查libevent库的一部分,我知道它仅支持在1.4版本的Windows套接字()并选择()。作为重叠IO是非常有效的留出很明显这是在第2版(这是在阿尔法)被不客气不可接受性状。亚最佳实施的另一个例子是使用红 - 黑树与PRIO-队列这是不客气沿线的某个地方。

I've recently reviewed parts of the libevent library and I know it only supports socket() and select() for windows in the 1.4 version. As overlapped IO is very efficient leaving it out is obviously an unacceptable trait which is being adressed in version 2 (which is in alpha). Another example of sub-optimal implementation is the use of red-black trees vs. prio-queues for the timeout logic which was adressed somewhere along the line.

有没有人有升压VS的libevent / libev的性能特性的任何意见。是否有在某些平台上的任何明显不希望的特质?我对这个问题的目的是,我不想皮江法炼洞的ASIO库,除非我绝对必须。我想知道的boost :: ASIO采用了最优化的操作系统原语最优化的方式。

Does anyone have any opinions on the performance characteristics of boost vs libevent/libev. Does it have any glaring undesireable traits on certain platforms ? My aim for this question is that I do not want to pidgeon-hole the ASIO library unless I absolutely must. I want to know if boost::asio uses the most optimal OS primitives in the most optimal way.

推荐答案

此外<一个href=\"http://stackoverflow.com/questions/1234750/c-socket-server-unable-to-saturate-cpu/1238315#1238315\">check这篇文章了解升压锁定问题​​:: ASIO,其中的可能的影响到你。

Also check this post about a locking problem in boost::asio, which may affect you.

这篇关于任何人做的boost :: ASIO的性能分析?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆