文章詳情頁
java - 輕量級線程和重量級線程的定義是什么,他們的區(qū)別是什么?如何區(qū)分?
瀏覽:108日期:2023-10-13 10:47:13
問題描述
通常說java的是重量級線程,python,erlang等是輕量級線程,請問為什么這樣說?他們的區(qū)別是什么?如何區(qū)分重量級線程和輕量級線程?
問題解答
回答1:重量級線程是操作系統(tǒng)中真正的線程,用戶自己對其的控制性并不強(qiáng)
輕量級線程其實(shí)是偽線程。用戶對其的控制性強(qiáng)了一些,golang中的協(xié)程也是這么一回事:是由go語言自己調(diào)度的。
回答2:進(jìn)程和線程是操作系統(tǒng)層面能夠被識別的概念,也就是說進(jìn)程和線程都能在操作系統(tǒng)中找到對應(yīng)的ID。也就是重量級的。協(xié)程是比線程更細(xì)粒度的工作單元。在java中也有協(xié)程的概念: http://www.blogjava.net/BlueD...
標(biāo)簽:
java
排行榜

熱門標(biāo)簽