首页 > 解决方案 > 在C中编译时使用-pthread是什么意思?

问题描述

当我们在 C 中使用库 pthread 时,当我们使用 GCC 编译代码时,我们必须指定:gcc test.c -o test -pthread. 那是什么,为什么我们需要使用它(以及为什么其他库不需要它)?

非常感谢你!

标签: cmultithreadinggcc

解决方案


那是什么,为什么我们需要使用它(以及为什么其他库不需要它)?

这取决于您是否要在 test.c 中使用线程。这不是强制性的(即您不必“必须”指定,这取决于您的应用程序)

pthread是一面旗帜。更多pthread来自 gcc 手册页:

-pthread 使用 POSIX 线程库添加对多线程的支持。此选项为预处理器和链接器设置标志。它不会影响编译器生成的目标代码或随它提供的库的线程安全。


推荐阅读