我知道存在多线程与多处理方法。
但我的印象是线程是由操作系统实现为进程的。因此,线程模型只是进程之上的编程构造。
至少在Java中(因此是标签,尽管这个问题与语言无关)我知道线程是由linux作为进程实现的
这不是一般情况吗?它取决于操作系统吗?
@SotiriosDelimanolis 在评论中询问 Java 的更新:One to one mapping of Java Thread to Linux thread (LWP)
最佳答案
现代 Java 版本中的线程是“ native ”的,由运行 JVM 的操作系统实现、调度和处理。所以答案取决于您使用的操作系统。
Distinguishing between Java threads and OS threads?
编辑
一般来说,不仅仅是 java,创建线程的规则是由所使用的语言、操作系统和语言库(或它们的某种组合)决定的。
但总的来说,在现代操作系统上,出于性能原因,多个线程通常共享一个进程。线程有时被称为轻量级进程。
This link概述了用于为各种操作系统编写多线程应用程序的线程和 C 库。
关于linux - X个线程是通过X个进程实现的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26851083/