第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問(wèn)題,去搜搜看,總會(huì)有你想問(wèn)的

編譯 Java 使其表現(xiàn)得像 GO 代碼

編譯 Java 使其表現(xiàn)得像 GO 代碼

Go
富國(guó)滬深 2021-07-29 13:40:56
是否有可能編寫(xiě)一個(gè) Java 編譯器或虛擬機(jī),讓您編譯使用線程和阻塞系統(tǒng)調(diào)用的遺留 Java 應(yīng)用程序,就像編譯 GO 程序一樣。因此 new Thread().run(); 將創(chuàng)建輕量級(jí)線程,所有阻塞系統(tǒng)調(diào)用將改為異步操作系統(tǒng)調(diào)用并使輕量級(jí)線程屈服。如果不是,那這不可能的主要原因是什么!
查看完整描述

2 回答

?
繁星淼淼

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊

Sun 在 Solaris(和其他 UNIX 系統(tǒng))上的 Java 運(yùn)行時(shí)的早期版本使用了稱(chēng)為“綠色線程”的用戶空間線程系統(tǒng)。如Java 1.1 for Solaris 文檔中所述:

多對(duì)一模型(多個(gè)用戶線程到一個(gè)內(nèi)核線程)的實(shí)現(xiàn)允許應(yīng)用程序創(chuàng)建任意數(shù)量的可以并發(fā)執(zhí)行的線程。在多對(duì)一(用戶級(jí)線程)實(shí)現(xiàn)中,所有線程活動(dòng)僅限于用戶空間。此外,一次只有一個(gè)線程可以訪問(wèn)內(nèi)核,因此操作系統(tǒng)只知道一個(gè)可調(diào)度實(shí)體。因此,這種多線程模型提供有限的并發(fā)性并且不利用多處理器。Java 線程在 Solaris 系統(tǒng)上的最初實(shí)現(xiàn)是多對(duì)一的,如下圖所示。

這很早就被操作系統(tǒng)的線程支持所取代。在Solaris中的情況下,之前的Solaris 9,這是一個(gè)M:N“多對(duì)多”類(lèi)似于轉(zhuǎn)到系統(tǒng),其中所述線程庫(kù)調(diào)度若干程序線程在內(nèi)核級(jí)線程的較小數(shù)目的。在 Linux 和較新版本的 Solaris 等使用 1:1 系統(tǒng)的系統(tǒng)上,用戶線程與內(nèi)核級(jí)線程直接對(duì)應(yīng),情況并非如此。

從那時(shí)起,我認(rèn)為沒(méi)有任何嚴(yán)肅的計(jì)劃讓 Sun/Oracle JVM 不再使用本機(jī)線程庫(kù)。正如歷史所表明的那樣,JVM 肯定可以使用這樣的模型,但它似乎不被認(rèn)為是一個(gè)值得追求的方向。


查看完整回答
反對(duì) 回復(fù) 2021-08-02
  • 2 回答
  • 0 關(guān)注
  • 190 瀏覽
慕課專(zhuān)欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢(xún)優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)