轻量级线程和重量级线程的定义是什么,他们的区别是什么?如何区分?

通常说java的是重量级线程,python,erlang等是轻量级线程,请问为什么这样说?他们的区别是什么?如何区分重量级线程和轻量级线程?

阅读 5k
2 个回答
  • 重量级线程是操作系统中真正的线程,用户自己对其的控制性并不强

  • 轻量级线程其实是伪线程。用户对其的控制性强了一些,golang中的协程也是这么一回事:是由go语言自己调度的。

进程和线程是操作系统层面能够被识别的概念,也就是说进程和线程都能在操作系统中找到对应的ID。也就是重量级的。
协程是比线程更细粒度的工作单元。
在java中也有协程的概念: http://www.blogjava.net/BlueD...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题