Chtěl jsem se podívat na manuálovou stránku pthread_mutex_trylock
.
Zadáním man pthread_mutex_trylock
, Mám No manual entry for pthread_mutex_trylock
.
Pak jsem viděl příspěvek navrhující provést sudo apt-get install manpages-posix manpages-posix-dev
.
Poté vidím popis jako:
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.
-
Jaký je rozdíl mezi touto Příručkou programátora POSIX a Příručka programátora Linux které obvykle vidím?
-
Co to znamená, když se řekne:
Linuxová implementace tohoto rozhraní se může lišit (podrobnosti o chování Linuxu najdete na
odpovídající manuálové stránce Linuxu), nebo rozhraní nemusí být na Linuxu implementováno.
Kde tedy najdu manuálovou stránku pro implementaci Linux pthread_mutex_trylock
? Mohu použít pthread_mutex_trylock
na mém systému? Používám Ubuntu.
Přijatá odpověď:
Říká to, protože neexistuje žádná záruka, že příručky POSIX (pro cokoli ) odpovídá skutečné implementaci odpovídající věci ve vašem konkrétním systému.
Chcete-li získat příručku pro pthread_mutex_trylock()
, nainstalujte příručku pro knihovnu, která implementuje rozhraní.
Na systémech Ubuntu se zdá, že požadovaný manuál je součástí glibc-doc
package (nalezeno hledáním názvu funkce na stránkách pro hledání balíčků Ubuntu).
Manuál POSIX rozhodně ne Zbytečný. Místní rozhraní Linuxu by mělo být kompatibilní s rozhraním popsaným v manuálu POSIX, ale manuál specifický pro implementaci může také zmiňovat upozornění a podrobnosti a rozšíření specifické pro Linux a podobné funkce mimo POSIX.
Příručky POSIX se stávají mimořádně důležitými, pokud máte obavy o přenositelnost vašeho kódu do jiných unixových systémů, v takovém případě byste se vyhnuli spoléhat na linuxová specifická rozšíření specifikace POSIX.