我想看看pthread_mutex_trylock
.
通过打字man pthread_mutex_trylock
,我得到了No manual entry for pthread_mutex_trylock
。
然后我看到一个帖子建议做sudo apt-get install manpages-posix manpages-posix-dev
。
之后,我看到如下描述:
PTHREAD_MUTEX_LOCK(3POSIX) POSIX Programmer's Manual PTHREAD_MUTEX_LOCK(3POSIX)
PROLOG
This manual page is part of the POSIX Programmer's Manual. The Linux implementation of this interface may differ (consult the cor‐
responding Linux manual page for details of Linux behavior), or the interface may not be implemented on Linux.
这本POSIX 程序员手册和我平时看到的Linux 程序员手册有什么区别?
说什么是什么意思:
该接口的 Linux 实现可能不同(有关 Linux 行为的详细信息,请参阅相应的 Linux 手册页),或者该接口可能未在 Linux 上实现。
那么我在哪里可以找到 Linux 实现的联机帮助页?我可以在我的系统上使用吗?我正在使用 Ubuntu。 pthread_mutex_trylock
pthread_mutex_trylock
它说这是因为不能保证 POSIX 手册(对于任何东西)对应于您特定系统上相应事物的实际实现。
要获取 的手册
pthread_mutex_trylock()
,请安装实现接口的库的手册。在 Ubuntu 系统上,所需的手册似乎是包的一部分(通过在Ubuntu 包搜索页面
glibc-doc
上搜索函数名称来找到)。POSIX 手册绝对不是没用的。本地 Linux 接口应该与 POSIX 手册中描述的接口兼容,但特定于实现的手册也可能会提到警告和特定于 Linux 的实现细节和扩展,以及类似的非 POSIX 功能。
如果您担心代码在其他 Unix 系统上的可移植性,那么 POSIX 手册就变得尤为重要,在这种情况下,您会希望避免依赖于 POSIX 规范的 Linux 特定扩展。
在 Arch Linux 中,软件包
man-pages
来自core
. 举个fcntl
例子,安装后man-pages
,man 2 fcntl
给出Linux程序员手册页,同时man 3 fcntl
给出man fcntl
POSIX程序员手册。