我对“pthread”和“thread”的想法感到困惑。我知道pthread是POSIX线程的缩写,这是UNIX中使用的一种标准化线程。但人们经常使用“线程”来引用线程。线程和线程是否相同?或者pthread只是UNIX中使用的线程的名称? 在此先感谢。什么是线程?
什么是线程?
回答
线程是一个通用的概念。 Wikipedia defines it as:
在计算机科学中,执行线程是可由操作系统调度程序独立管理的最小程序指令序列。线程是一个轻量级的过程。
这就是对的。 Pthreads或POSIX threads是与Unix上的C程序一起使用的概念的一个实现。大多数现代语言都有自己的线程实现。从该网页:
Pthreads中被定义为一组C语言编程类型和过程调用,用pthread.h头实现/包括文件和一个线程库 - 尽管这个库可能是另一个库的一部分如libc,在一些实现中。
为了增加灰,
的Pthread是POSIX的投诉,这意味着你可以在大多数UNIX操作系统使用它。
不需要为每个Unix(Linxux,FreeBSD等)重写它们,并且它们的行为都是相同的。
Pthreads是指为线程创建和同步定义API的POSIX标准(IEEE 1003.1c)。这是线程行为的规范,而不是实现。操作系统设计人员可以按照他们希望的任何方式实施规范。许多系统实现Pthreads规范;大多数是UNIX类型的系统,包括Linux,Mac OS X和Solaris。尽管Windows本身不支持Pthreads,但仍有一些适用于Windows的第三方实现。
今天使用了三个主线程库:POSIX Pthreads,Windows和Java。 Pthread是POSIX标准的线程扩展,可以作为用户级或内核级库提供。 Windows线程库是Windows系统上可用的内核级库。 Java线程API允许直接在Java程序中创建和管理线程。但是,因为在大多数情况下,JVM运行在主机操作系统之上,所以Java线程API通常使用主机系统上可用的线程库来实现。这意味着在Windows系统上,Java线程通常使用Windows API实现; UNIX和Linux系统经常使用Pthreads
- 1. 什么是线程?
- 2. 什么是绿色线程?
- 3. 什么是暂停线程?
- 4. 什么是Java2D Disposer线程?
- 5. 什么是工作线程?
- 6. 什么是“等待线程”?
- 7. 什么是多线程?
- 8. 什么是“内联线程”?
- 9. 什么是用户线程?
- 10. 什么是线程(java,android)?
- 11. 什么是多线程应用程序?
- 12. 这是什么休眠线程
- 13. 是什么(PHP的并行线程)
- 14. 什么是石英默认线程数
- 15. 什么是“VM周期任务线程”?
- 16. Android:什么是活页夹线程?
- 17. 什么是Java中的process_reaper线程?
- 18. 守护线程是什么意思?
- 19. 线程上的“detach()”是什么? CPP
- 20. 确定什么是阻塞UI线程
- 21. 线程安全是什么意思?
- 22. c#:什么是线程轮询?
- 23. Jboss Messaging WorkerThread#这些线程是什么?
- 24. java“VM线程”是做什么的?
- 25. 线程安全是什么意思?
- 26. msdn:什么是“线程安全”?
- 27. 什么是线程安全的对象
- 28. javadumps中的线程ID是什么?
- 29. 什么是Android UiThread(UI线程)
- 30. 什么是'线程限制'克隆?
啊,这为我清除了这个概念。谢谢 – turtlesoup 2013-02-28 04:22:49