代码之家  ›  专栏  ›  技术社区  ›  Robert S. Barnes Antoni

boost.thread linking-boost_thread与boost_thread-mt

  •  24
  • Robert S. Barnes Antoni  · 技术社区  · 16 年前

    我不清楚 Boost.Thread 1.34.1 图书馆。我在Ubuntu 8.04上,我发现当使用 boost_thread 或 boost_thread-mt 在链接编译和运行期间,但在上面的链接中,我没有看到关于这些链接或任何其他链接选项的任何文档。

    什么增强。线程链接选项可用,它们是什么意思?

    2 回复  |  直到 14 年前
        1
  •  35
  •   paercebal    16 年前

    好。。。

    第一件有趣的事是 -mt 名称中的修饰符表示库可以用于多线程。这会让我们相信 boost_thread (没有此修饰符)可能是多线程不安全的…

    但真正的情况是(在我自己的Ubuntu10.04盒子上看到的那样), 增压螺纹 是一个软链接到 boost_thread-mt 也就是说这两个是同一个。

    如果您想验证它,可以在Ubuntu上打开一个控制台(因为名称很长,所以将控制台设为全屏),然后键入:

    cd /usr/lib
    

    移动到boost库所在的目录。然后:

    ls -l ./libboost_thread*
    

    它将列出所有以 libboost_thread ,以及其他信息。结果是:

    [...] ./libboost_thread.a
    [...] ./libboost_thread-mt.a -> libboost_thread.a
    

    正如你所看到的, libboost_thread.a 是静态库,并且 libboost_thread-mt.a 是一个软链接到 libboost_线程.a

        2
  •  8
  •   CharlesB Craig McQueen    14 年前