gpt4 book ai didi

c++ - 多久从 boost::signals::trackable 派生一次?

转载 作者:行者123 更新时间:2023-11-30 01:58:48 25 4
gpt4 key购买 nike

当使用 Boost.Signals 时,boost 允许您从 boost::signals::trackable 派生以简化对象/连接生命周期管理(参见 boost documentation)。

我正处于项目的早期阶段,我在想,是否要派生自 boost::signals::trackable in

  • 我编写的每个新类将来可能会使用 Boost.Signals
  • 或者仅在类里面,我确信他们将需要trackable bas e-class 的功能

第一种方法的主要原因是防止我忘记派生自 boost::signals::trackable

还有像这样的双重推导

class Foo : public Base, public boost::signals::trackable
{
};

变得不必要。

另一方面,防止内存泄漏不应该是主要的设计方面。应使用 valgrind 等测试和分析工具来检测内存泄漏。

哪种方法更适合成长型项目?

最佳答案

请注意,Boost.Signals2 取代了 Boost.Signals。它具有更加灵活和强大的功能 tracking mechanism .

虽然该库旨在为多线程程序提供线程安全的解决方案,但可以在 single-threaded environment 中避免锁定开销。通过将 boost::signals2::dummy_mutex 设置为信号的内部互斥锁。

关于c++ - 多久从 boost::signals::trackable 派生一次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16845424/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com