绿色线程和java中的本机线程

时间:2013-03-07 09:20:14

标签: java multithreading

  • 绿色线程和本机线程有什么区别?
  • 为什么命名为绿色和原生?

我是编程世界的新手。我喜欢学习java。在通过java线程面试问题时,我发现了这一点。我听说过线程,但不是这些绿色和原生的。 我对绿色和原生线程感到焦虑,但无法理解。

在哪种情况下,线程被称为绿色或原生?(我的意思是在编程中)

1 个答案:

答案 0 :(得分:18)

  

绿色线程和本机线程有什么区别?

绿色线程由虚拟机调度。

本机线程由操作系统调度。

  

为什么命名为绿色和原生?

"绿色"是早期JVM线程项目的代号。它是库的名称,它在Java 1.1

中提供了VM-sheduled线程

本机线程之所以这样称呼,是因为它们属于原生平台。

  

我们怎么知道创建的线程是本机的还是绿色的?

绿色线程已经过去,JVM仅适用于自1.3以来的本机线程

  

"绿线"指的是Java虚拟机所在的模型   本身创建,管理和上下文切换所有Java线程   一个操作系统进程。没有操作系统线程库   使用

     

"原生线程"指Java虚拟机创建的   并使用操作系统线程库管理Java线程 -   在UnixWare上命名为libthread - 每个Java线程都映射到一个   线程库线程。