2013-05-05 134 views
2

例如,我使用Java編寫5線程的多線程程序。當我執行它時,操作系統(例如Windows 7)是否知道或者它只是一項任務?是java的多線程對操作系統可見

+1

打開任務管理器,我猜你可以看到一個唯一的映射! – NINCOMPOOP 2013-05-05 09:46:12

+0

HotSpot JVM已經爲來自Java 1.2的每個操作系統使用了原生線程,用於添加綠色線程+1 – 2013-05-05 10:02:03

回答

7

這取決於JVM的實現。

但是,在Linux平臺上,USUALLY在Java線程和本地線程之間有一對一映射。

或者,JVM可以選擇使用多對一映射來實現,也就是說許多java線程都在一個本地線程上運行。這就是所謂的Green Thread.

+1

+1。 – mprabhat 2013-05-05 09:55:28

+0

這些Java線程的優先級較低,因爲它們在一個本地線程上運行,與其他本地線程相比較? – 2013-05-05 10:22:40

2

現代JVM 傾向於使用操作系統線程,但不指定,而JVM是免費的,否則做。

相關問題