gpt4 book ai didi

c - POSIX 线程 API 的版本如何?自 1995 年以来是否已更新?

转载 作者:行者123 更新时间:2023-12-03 00:32:17 25 4
gpt4 key购买 nike

我现在刚刚开始接触线程,特别是我想学习 POSIX 线程以及有关它们的所有内容。正如在 Linux 中实现的那样。我正在寻找资源来了解它们,但其中许多资源都非常旧。其中一些可以追溯到

我不是在寻求资源。由于这两本书太老了,我想知道它们的主题如何。 POSIX API 的版本如何? Wikipedia all I see is this,

POSIX Threads is an API defined by the standard POSIX.1c, Threads extensions (IEEE Std 1003.1c-1995).

我不确定这是否意味着自 1995 年以来 POSIX 的线程部分没有更新?有没有办法判断 Material 的相关性?

最佳答案

在您在“外部链接”部分中引用的维基百科页面的最底部,您将找到指向 current Posix specification of pthreads.h 的链接。 ,其中包括变更历史。虽然有一些,但基本原则是完整的。所以你提到的书可能仍然是很好的学习 Material 。 (我的书架上还保留着一本翻阅过的《Programming with POSIX Threads》。)

正如下面的评论中提到的,C11 提供了原子和线程本地存储,这是由 GCC 从 4.9 开始实现的。 (线程本地存储以前在 GCC 中作为扩展提供,所以它并不是那么新鲜。)线程本地存储的存在减少了对 Pthreads 线程本地存储接口(interface)的需求,但这只是 Pthreads 的一小部分。库(而且,虽然线程本地存储更容易使用并且语法上更方便,但它并没有真正改变程序结构。)

C11 还指定了一个可选的 threads.h header ,其中包含类似于 Pthreads 的线程函数。然而,glibc 不包含这个头文件,并且 Pthreads 的使用仍然相当普遍,尽管开源和闭源的 threads.h 实现确实存在。 (有关开源实现,请参阅 musl 库和/或 FreeBSD 实现,自 10.0 起可用。)从概念上讲,C11 接口(interface)与 Pthread 非常相似;显然,它们有不同的名称,并且在某些情况下它们被简化。然而,一旦您掌握了 Pthreads,您就可以轻松理解遇到的任何 C11 线程程序。

关于c - POSIX 线程 API 的版本如何?自 1995 年以来是否已更新?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51316450/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com