X线程是通过X进程实现的吗?

时间:2014-11-10 19:07:30

标签: linux windows multithreading process operating-system

我知道存在多线程与多处理方法 但我的印象是线程由操作系统实现为进程。因此,线程模型只是一个基于进程的编程结构 至少在Java中(因此标签虽然这个问题与语言无关)我知道线程是由linux实现的进程 这不是一般情况吗?它取决于操作系统吗?

@SotiriosDelimanolis在评论中提到了

UPDATE One to one mapping of Java Thread to Linux thread (LWP)

1 个答案:

答案 0 :(得分:1)

现代Java版本中的线程是“本机的”,由运行JVM的操作系统实现,调度和处理。所以答案取决于您使用的操作系统。

Distinguishing between Java threads and OS threads?

修改

一般而言,不仅仅是java,创建线程的规则取决于所使用的语言,操作系统和语言库(或其中某些组合)。

但总的来说,在现代操作系统中,出于性能原因,多个线程通常共享一个进程。线程有时被称为轻量级进程

This link概述了用于为各种操作系统编写多线程应用程序的线程和C库。