資料介紹
多線程編程是提高應(yīng)用程序性能的重要手段之一。Java平臺(tái)從開始就被設(shè)計(jì)成為多線程環(huán)境,從語言級(jí)上支持多線程。在Java語言中,提供了創(chuàng)建、啟動(dòng)、調(diào)度、同步等各種線程管理方法,下面會(huì)進(jìn)行詳細(xì)介紹。
多線程編程的目的是最大限度地利用CPU資源。當(dāng)某一線程的處理不需要占用CPU,而只和I/O、內(nèi)存等資源打交道時(shí),讓需要占用CPU資源的其他線程有機(jī)會(huì)獲得CPU資源。要掌握多線程編程,需要弄清如下兩個(gè)區(qū)別。
最初在Unix等多用戶、多任務(wù)操作系統(tǒng)環(huán)境下,為了提高操作系統(tǒng)的并行性和資源利用率,提出了進(jìn)程的概念。進(jìn)程首先是個(gè)動(dòng)態(tài)的過程,是程序的一次執(zhí)行。進(jìn)程用于表示應(yīng)用程序在內(nèi)存環(huán)境中執(zhí)行的基本單元,通常有如下一些特點(diǎn)。
進(jìn)程是操作系統(tǒng)環(huán)境中的基本成分、是系統(tǒng)資源分配的基本單位。進(jìn)程在執(zhí)行過程中有內(nèi)存單元的初始入口點(diǎn),并且進(jìn)程存活過程中始終擁有獨(dú)立的內(nèi)存地址空間。進(jìn)程的生存期狀態(tài)包括創(chuàng)建、就緒、運(yùn)行、阻塞和死亡等類型。
從用戶角度來看,進(jìn)程是應(yīng)用程序的一個(gè)執(zhí)行過程。從操作系統(tǒng)核心角度來看,進(jìn)程代表的是操作系統(tǒng)分配的內(nèi)存、CPU時(shí)間片等資源的基本單位,是為正在運(yùn)行的程序提供的運(yùn)行環(huán)境。
隨著對(duì)計(jì)算能力需求的不斷增長(zhǎng),計(jì)算機(jī)系統(tǒng)中的資源也顯得越發(fā)寶貴。頻繁的進(jìn)程狀態(tài)切換會(huì)消耗大量的系統(tǒng)資源,為解決此問題,提出了線程的概念。線程仍然是處理器調(diào)度的基本單位,但不再是資源分配的單位。線程的狀態(tài)切換比進(jìn)程切換的負(fù)擔(dān)要小得多。Java語言從開始就被設(shè)計(jì)成為多線程環(huán)境,從語言級(jí)別上支持多線程。
另一個(gè)重要的區(qū)別是線程對(duì)象和線程的區(qū)別。線程對(duì)象是指可以產(chǎn)生線程的對(duì)象,如在Java語言中的Thread對(duì)象、Runnable對(duì)象。線程是指正在執(zhí)行的一個(gè)指令序列。在Java語言中是指從一個(gè)線程對(duì)象的start()方法執(zhí)行開始,運(yùn)行run()方法體中的那一段相對(duì)獨(dú)立的過程。
對(duì)線程概念有了基本認(rèn)識(shí)之后,下面章節(jié)就詳細(xì)介紹Java語言中的多線程編程方法。
- 零點(diǎn)起步之PIC單片機(jī)常用模塊與典型實(shí)例 0次下載
- 零點(diǎn)起步之AVR單片機(jī)開發(fā)入門與典型實(shí)例 0次下載
- Java程序設(shè)計(jì)之Java安全技術(shù)網(wǎng)絡(luò)編程的詳細(xì)資料說明 6次下載
- Java教程之XML與內(nèi)容管理的詳細(xì)資料說明 10次下載
- Java程序設(shè)計(jì)教程之Java WEB服務(wù)器端編程的詳細(xì)資料說明 11次下載
- Java教程之零點(diǎn)起飛學(xué)Java的類與對(duì)象資料說明 14次下載
- Java教程之零點(diǎn)起飛學(xué)Java的異常處理資料說明 11次下載
- JAVA教程之消息、繼承與多態(tài)的應(yīng)用和資料介紹說明 0次下載
- JAVA教程之類與對(duì)象的詳細(xì)資料說明 0次下載
- JAVA程序設(shè)計(jì)教程之Java中系統(tǒng)類的詳細(xì)資料說明 0次下載
- JAVA程序設(shè)計(jì)教程之Java語言基礎(chǔ)的詳細(xì)資料說明 0次下載
- JAVA程序設(shè)計(jì)教程之數(shù)組的詳細(xì)資料說明 0次下載
- java教程之如何進(jìn)行Java異常處理? 0次下載
- java學(xué)習(xí)——java面試【事務(wù)、鎖、多線程】資料整理 0次下載
- JAVA教程之Java畫圖程序 13次下載
- 什么是零點(diǎn)漂移?零點(diǎn)漂移產(chǎn)生的原因及解決辦法 3w次閱讀
- Java多線程的用法 973次閱讀
- KUKAC4機(jī)器人零點(diǎn)校正 796次閱讀
- 詳解傳遞函數(shù)的零點(diǎn)和極點(diǎn) 2.2w次閱讀
- 機(jī)器人通過外部零點(diǎn)標(biāo)定進(jìn)行零點(diǎn)復(fù)歸測(cè)試 1429次閱讀
- Java多線程永動(dòng)任務(wù) 多線程異步任務(wù)項(xiàng)目解讀 1136次閱讀
- 差壓變送器的零點(diǎn)遷移 5749次閱讀
- 差壓式液位計(jì)為什么要進(jìn)行零點(diǎn)遷移 1.4w次閱讀
- java定時(shí)器和多線程 2744次閱讀
- 常見顯示儀表零點(diǎn)檢查和調(diào)整方法 9016次閱讀
- java開發(fā)中遇到的難點(diǎn)有哪些_java開發(fā)常見的問題及解決辦法 9.4w次閱讀
- java基礎(chǔ)知識(shí)點(diǎn)匯總 6411次閱讀
- 一文看懂scala和java的區(qū)別 6.5w次閱讀
- Java多線程總結(jié)之Queue 3328次閱讀
- 產(chǎn)生零點(diǎn)漂移的原因及解決措施 2.3w次閱讀
下載排行
本周
- 1星火6J3-1交直流二波段收音機(jī)電路圖資料
- 1.86 MB | 1次下載 | 免費(fèi)
- 2一種基于三極管開關(guān)特性的負(fù)壓空控制電路的應(yīng)用資料
- 0.51 MB | 次下載 | 2 積分
- 3IMX307LQD-C規(guī)格書
- 2.09 MB | 次下載 | 1 積分
- 4IP6559AC超級(jí)快充電路設(shè)計(jì)資料
- 0.04 MB | 次下載 | 10 積分
- 5PL8805 4.7V至60V輸入,3.5A,降壓直流DCDC轉(zhuǎn)換器技術(shù)手冊(cè)
- 2.79 MB | 次下載 | 免費(fèi)
- 6PL31001 12V,10A,同步升壓轉(zhuǎn)換器技術(shù)手冊(cè)
- 2.09 MB | 次下載 | 免費(fèi)
- 7PL88052 4.8V至60V輸入,5A,同步降壓轉(zhuǎn)換器技術(shù)手冊(cè)
- 3.36 MB | 次下載 | 免費(fèi)
- 8PL88053 4.8V至60V輸入,3.5A,同步降壓轉(zhuǎn)換器技術(shù)手冊(cè)
- 3.31 MB | 次下載 | 免費(fèi)
本月
- 1如何看懂電子電路圖
- 12.88 MB | 291次下載 | 免費(fèi)
- 2RK3588數(shù)據(jù)手冊(cè)
- 2.24 MB | 14次下載 | 免費(fèi)
- 3PC5502負(fù)載均流控制電路數(shù)據(jù)手冊(cè)
- 1.63 MB | 12次下載 | 免費(fèi)
- 4STM32F10x參考手冊(cè)資料
- 13.64 MB | 12次下載 | 1 積分
- 5OAH0428 V1.0英文規(guī)格書
- 5.86 MB | 8次下載 | 免費(fèi)
- 6臺(tái)達(dá)變頻器VFD-M使用手冊(cè)
- 2.51 MB | 3次下載 | 免費(fèi)
- 7PID控制算法學(xué)習(xí)筆記資料
- 3.43 MB | 3次下載 | 2 積分
- 8RM1015B設(shè)計(jì)指南
- 1.85 MB | 2次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935132次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420064次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191415次下載 | 10 積分
- 5十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183349次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81599次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73818次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65990次下載 | 10 積分
評(píng)論