<strike id="cakm0"></strike>
  • <button id="cakm0"><dl id="cakm0"></dl></button>
  • <samp id="cakm0"><tbody id="cakm0"></tbody></samp>
    <samp id="cakm0"><pre id="cakm0"></pre></samp><ul id="cakm0"></ul>
    <strike id="cakm0"></strike>
    <li id="cakm0"></li>
  • <ul id="cakm0"></ul>
  • 更多精彩內容,歡迎關注:

    視頻號
    視頻號

    抖音
    抖音

    快手
    快手

    微博
    微博

    java openjdk

    文檔

    java openjdk

    OpenJDK是JDK的開放原始碼版本,以GPL協(xié)議的形式放出。OpenJDK還可以運行在其他系統(tǒng)上,特別是那些基于PowerPC的機器上。
    推薦度:
    導讀OpenJDK是JDK的開放原始碼版本,以GPL協(xié)議的形式放出。OpenJDK還可以運行在其他系統(tǒng)上,特別是那些基于PowerPC的機器上。

    java openjdk是什么,讓我們一起了解一下?

    OpenJDK是JDK的開放原始碼版本,以GPL協(xié)議的形式放出。OpenJDK還可以運行在其他系統(tǒng)上,特別是那些基于PowerPC的機器上。?

    那么?JDK 和 OpenJDK 有什么區(qū)別?

    1、授權協(xié)議的不同。

    OpenJDK 采用 GPL V2 協(xié)議放出,而 JDK 則采用 JRL 放出。兩者協(xié)議雖然都是開放源代碼的,但是在使用上的不同在于 GPL V2 允許在商業(yè)上使用,而 JRL 只允許個人研究使用。

    2、OpenJDK 不包含 Deployment(部署)功能。

    部署的功能包括:Browser Plugin、Java Web Start、以及 Java 控制面板,這些功能在 OpenJDK 中是找不到的。

    3、OpenJDK 源代碼不完整。

    由于 SUN JDK 的一部分源代碼因為產權的問題無法開放 OpenJDK 使用,其中最主要的部份就是 JMX 中的可選元件 SNMP 部份的代碼。因此這些不能開放的源代碼將它作成 plug,以供 OpenJDK 編譯時使用,你也可以選擇不要使用 plug。而 Icedtea 則為這些不完整的部分開發(fā)了相同功能的源代碼(OpenJDK6),促使 OpenJDK 更加完整。

    4、部分源代碼用開源代碼替換。

    由于產權的問題,很多產權不是 SUN 的源代碼被替換成一些功能相同的開源代碼,比如說字體柵格化引擎,使用 Free Type 代替。

    5、OpenJDK 只包含最精簡的 JDK。

    OpenJDK 不包含其他的軟件包,比如 Rhino Java DB JAXP……,并且可以分離的軟件包也都是盡量的分離,但是這大多數(shù)都是自由軟件,你可以自己下載加入。

    openjdk是怎樣實現(xiàn)的?

    java線程是通過start的方法啟動執(zhí)行的,主要內容在native方法start0中。

    openjdk的寫jni一般是一一對應的,Thread.java對應的就是Thread.c。

    具體實例代碼如下:

    static?JNINativeMethod?methods[]?=?{
    ????{"start0",???????????"()V",????????(void?*)&JVM_StartThread},
    ????{"stop0",????????????"("?OBJ?")V",?(void?*)&JVM_StopThread},
    ????{"isAlive",??????????"()Z",????????(void?*)&JVM_IsThreadAlive},
    ????{"suspend0",?????????"()V",????????(void?*)&JVM_SuspendThread},
    ????{"resume0",??????????"()V",????????(void?*)&JVM_ResumeThread},
    ????{"setPriority0",?????"(I)V",???????(void?*)&JVM_SetThreadPriority},
    ????{"yield",????????????"()V",????????(void?*)&JVM_Yield},
    ????{"sleep",????????????"(J)V",???????(void?*)&JVM_Sleep},
    ????{"currentThread",????"()"?THD,?????(void?*)&JVM_CurrentThread},
    ????{"countStackFrames",?"()I",????????(void?*)&JVM_CountStackFrames},
    ????{"interrupt0",???????"()V",????????(void?*)&JVM_Interrupt},
    ????{"isInterrupted",????"(Z)Z",???????(void?*)&JVM_IsInterrupted},
    ????{"holdsLock",????????"("?OBJ?")Z",?(void?*)&JVM_HoldsLock},
    ????{"getThreads",????????"()["?THD,???(void?*)&JVM_GetAllThreads},
    ????{"dumpThreads",??????"(["?THD?")[["?STE,?(void?*)&JVM_DumpThreads},
    ????{"setNativeName",????"("?STR?")V",?(void?*)&JVM_SetNativeThreadName},
    };

    以上就是小編今天的分享了,希望可以幫助到大家。

    文檔

    java openjdk

    OpenJDK是JDK的開放原始碼版本,以GPL協(xié)議的形式放出。OpenJDK還可以運行在其他系統(tǒng)上,特別是那些基于PowerPC的機器上。
    推薦度:
    為你推薦
    資訊專欄
    熱門視頻
    相關推薦
    java rectangle java redirect java reference java reflect java regex java openssl java orm java outer java outofmemory java overload java resources java resolve java require java region java render java override java pandas java parse java repeat java parser java opengl java openfire java onvif java inputstreamreader java influxdb java implements java image java htmlunit java hibernate java number java nslookup java notify java node類 java hdfs java hashcode java getbytes java geotools java nfs java nexus java nextline
    Top 国产成人综合精品| 少妇人妻偷人精品视频| www.999精品视频观看免费| 99在线精品视频| 日韩精品免费电影| 99久久综合精品免费| 久久五月精品中文字幕| 九九热在线视频精品| 日本内射精品一区二区视频| 无码精品人妻一区二区三区影院| 国产精品亚洲片夜色在线| 成人精品一区二区三区中文字幕| 国产精品嫩草影院AV| 精品国产精品国产偷麻豆| 久久精品国产亚洲AV无码麻豆| www.午夜精品| www国产精品内射老熟女| 久久亚洲精品无码aⅴ大香| 国内精品久久久人妻中文字幕| 精品视频一区二区观看| 人妻少妇精品视频三区二区一区| 999这里只有精品| 国产精品久久久久jk制服| 香蕉伊思人在线精品| 无码精品人妻一区二区三区免费| 国产精品美女一区二区三区| 91久久亚洲国产成人精品性色| 久久精品人人爽人人爽| 中文字幕在线亚洲精品| 国产乱人伦偷精品视频不卡| 国产精品jizz观看| 国语自产偷拍精品视频偷| 久久99这里只有精品国产| 亚洲精品一卡2卡3卡三卡四卡| 久久国产精品鲁丝片| 国产精品亚洲片在线观看不卡| 国产精品1024在线永久免费| 国产亚洲美女精品久久| 在线观看91精品国产不卡免费| 亚洲国产精品久久久久秋霞小| 无码国内精品久久综合88|