Skip to content
EntityQ213092· pop 40· linked from 1,096 articles

Also known as daemon thread, execution thread, computer thread, computing thread, software thread, thread of execution

最小的编程指令序列由调度器可以独立管理

Wikidata facts

Subclass of
task
Part of
process
Named after
stream
Image
TLS principle.svg
Show 4 more facts
topic's main category
Category:Threads (computing)
Commons category
Threads (computing)
manifestation of
concurrent computing
Sources (4)

via Wikidata · CC0

Article · 中文

线程(英語:thread)是操作系统能夠進行運算调度的最小單位。大部分情况下,它被包含在进程之中,是进程中的實際運作單位。一条线程指的是进程中一个单一顺序的控制流,一個进程中可以並行多個线程,每条线程并行执行不同的任务。在Unix System V及SunOS中也被称为轻量进程(lightweight processes),但轻量进程更多指内核线程(kernel thread),而把用户线程(user thread)称为线程。 线程是独立调度和分派的基本单位。线程可以为操作系统内核调度的内核线程,如Win32线程;由用户进程自行调度的用户线程,如Linux平台的POSIX Thread;或者由内核与用户进程,如Windows 7的线程,进行混合调度。 同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间,文件描述符和信号处理等等。但同一进程中的多个线程有各自的调用栈(call stack),自己的(register context),自己的线程本地存储(thread-local storage)。 一个进程可以有很多线程來處理,每条线程并行执行不同的任务。如果进程要完成的任務很多,這樣需很多线程,也要調用很多核心,在多核或多CPU,或支持Hyper-threading的CPU上使用多线程程序设计的好处是显而易见的,即提高了程序的执行吞吐率。以人工作的樣子想像,核心相當於人,人越多則能同時處理的事情越多,而线程相當於手,手越多則工作效率越高。在单CPU单核的计算机上,使用多线程技术,也可以把进程中负责I/O处理、人机交互而常被阻塞的部分与密集计算的部分分开来执行,编写专门的workhorse线程执行密集计算,雖然多工比不上多核,但因為具備多线程的能力,从而提高了程序的执行效率。

Abstract from DBpedia / Wikipedia · CC BY-SA