【问题标题】:Replacing ACE with BOOST用 BOOST 代替 ACE
【发布时间】:2012-11-22 12:53:46
【问题描述】:

我是BOOST的新手

我们计划从ACE 迁移到BOOST。我们没有使用完整的ACE,而只是ACE 库的一部分,下面会提到一些

  1. ACE_THREAD
  2. ACE_OS
  3. ACE_Condition
  4. ACE_Timer
  5. ACE_Hash
  6. ACE_Semaphore
  7. ACE_Time_Value

这个或类似的functionality/api 是否在BOOST 中可用。最重要的是BOOST 中有ACE_Task_Base 类型的功能

我想知道这是否可以使用BOOST 以及使用BOOST 的任何问题。我的产品是纯 C++,重 NetworkThreads WindowsUnices

【问题讨论】:

  • 我感觉到一个痛苦的世界正在向你袭来——我记得 ACE_Task_Base 提供了消息和线程函数/接口。不确定 boost 有没有这种级别的东西——它有你可以用来构建那个功能的东西。

标签: c++ boost ace


【解决方案1】:

ACE_Semaphore & ACE_THREAD & ACE_Condition

以上都是boost::threads的一部分

http://www.boost.org/doc/libs/1_52_0/doc/html/thread.html

C++11 http://en.cppreference.com/w/cpp/thread

ACE_OS

在 boost w.r.t 中做了一些常见的事情。操作系统,但这取决于您使用的是哪个部分。有boost::systemboost::filesystem,上面的线程等等。我怀疑您需要处理一些较低级别的呼叫。

http://www.boost.org/doc/libs/1_52_0/libs/system/doc/index.html

http://www.boost.org/doc/libs/1_52_0/libs/filesystem/doc/index.htm

ACE_Timer

boost::asio 可用于创建与此类似的计时器,此库可能会提供更多 ACE 的功能(或创建它的机制)

http://www.boost.org/doc/libs/1_52_0/doc/html/boost_asio.html

ACE_Hash

ACE_Hash - 这里还有很多功能,但可以用 boost 或 C++11 替换/实现

提升: http://www.boost.org/doc/libs/1_52_0/doc/html/hash.html

http://www.boost.org/doc/libs/1_52_0/doc/html/unordered.html

c++11: http://en.cppreference.com/w/cpp/container/unordered_map

ACE_Task_Base

我怀疑您需要为这里的功能创建自己的替代品。 ACE 涉及到消息和消息解析机制。上面已经介绍了线程,但是可能需要再次实现创建线程的管理器。

【讨论】:

    猜你喜欢
    • 2018-03-07
    • 2023-03-21
    • 1970-01-01
    • 2010-10-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多