0

我是一名学生,我现在正在研究线程,尽管非常仔细地阅读了 TLPI,但我仍然不太了解为什么一个人可能会加入两个 pthread。

据我所知,它既可以用作一个线程将返回值传递给另一个线程的一种方式,也可以用作线程之间的等待机制。也就是说,我完全有可能误解了整个观点。有人愿意为我解释一下吗?

4

1 回答 1

2

线程主要用于并行处理。加入/退出线程意味着完成了线程的工作/目的。当目的实现时,资源应该被释放并可供其他线程/进程使用。资源可以是以下任何一种:

  1. Stack(正如 Basile Starynkevitch 所说)
  2. 处理器时间
  3. 打开的文件/共享内存/线程锁定/预订的任何其他资源。

加入线程可以仅用于移动控制,也可以用于将值作为返回值进行传输(如 Michael Burr 所说)。

于 2013-04-26T09:37:48.787 回答