我正在考虑在计时器管理器的实现中使用boost::function
。在计划计时器中,将传递一个 boost::function
,并在计时器到期时执行回调。时间将以非常高的频率安排/取消(约 1000 次操作/秒)。
但我担心 boost::function
可能使用的堆内存量。
例如,我知道 boost::asio
经常使用 boost::function
,而对该库的性能要求可能非常高。
你觉得怎么样?
最佳答案
在我看来,boost::function
的开销不太可能成为计时器管理代码中的控制因素。
正确且高效地获取计时器队列、锁定和信号等待线程可以更好地利用您的大脑周期。相反,这是另一个支持 boost::function
的论据,或者类似的论点,以避免“原始”回调带来的麻烦。
关于c++ - boost::函数内存使用情况,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4307176/