虽然我知道有关此问题的问题已经解决(例如https://stackoverflow.com/questions/5713142/green-threads-vs-non-green-threads),但我感觉自己并没有一个令人满意的答案。
问题是:为什么JVM不再支持绿色线程?
它在代码样式的Java FAQ上说了这一点:
绿色线程是指Java虚拟机(JVM)的一种操作模式,其中所有代码都在单个操作系统线程中执行。
然后在java.sun.com上:
不利之处在于,使用绿色线程意味着Linux上的系统线程无法得到利用,因此当添加其他CPU时Java虚拟机无法扩展。
在我看来,JVM可以具有等于内核数量的系统进程池,然后在此之上运行绿色线程。当您有大量经常阻塞的线程时(这可能是由于当前JVM限制了线程数),这可能会带来一些很大的优势。
有什么想法吗?