版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、JavaJava多線程編程詳解多線程編程詳解一:理解多線程多線程是這樣一種機(jī)制,它允許在程序中并發(fā)執(zhí)行多個指令流,每個指令流都稱為一個線程,彼此間互相獨立。線程又稱為輕量級進(jìn)程,它和進(jìn)程一樣擁有獨立的執(zhí)行控制,由操作系統(tǒng)負(fù)責(zé)調(diào)度,區(qū)別在于線程沒有獨立的存儲空間,而是和所屬進(jìn)程中的其它線程共享一個存儲空間,這使得線程間的通信遠(yuǎn)較進(jìn)程簡單。多個線程的執(zhí)行是并發(fā)的,也就是在邏輯上“同時”,而不管是否是物理上的“同時”。如果系統(tǒng)只有一個CPU,
2、那么真正的“同時”是不可能的,但是由于CPU的速度非??欤脩舾杏X不到其中的區(qū)別,因此我們也不用關(guān)心它,只需要設(shè)想各個線程是同時執(zhí)行即可。多線程和傳統(tǒng)的單線程在程序設(shè)計上最大的區(qū)別在于,由于各個線程的控制流彼此獨立,使得各個線程之間的代碼是亂序執(zhí)行的,由此帶來的線程調(diào)度,同步等問題,將在以后探討。二:在Java中實現(xiàn)多線程我們不妨設(shè)想,為了創(chuàng)建一個新的線程,我們需要做些什么?很顯然,我們必須指明這個線程所要執(zhí)行的代碼,而這就是在Java
3、中實現(xiàn)多線程我們所需要做的一切!真是神奇!Java是如何做到這一點的?通過類!作為一個完全面向?qū)ο蟮恼Z言,Java提供了類java.lang.Thread來方便多線程編程,這個類提供了大量的方法來方便我們控制自己的各個線程,我們以后的討論都將圍繞這個類進(jìn)行。那么如何提供給Java我們要線程執(zhí)行的代碼呢?讓我們來看一看Thread類。Thread類最重要的方法是run(),它為Thread類的方法start()所調(diào)用,提供我們的線程所要執(zhí)
4、行的代碼。為了指定我們自己的代碼,只需要覆蓋它!方法一:繼承Thread類,覆蓋方法run()我們在創(chuàng)建的Thread類的子類中重寫run()加入線程所要執(zhí)行的代碼即可。下面是一個例子:publicclassMyThreadextendsThreadintcount=1numberpublicMyThread(intnum)Runnable接口只有一個方法run(),我們聲明自己的類實現(xiàn)Runnable接口并提供這一方法,將我們的線程代
5、碼寫入其中,就完成了這一部分的任務(wù)。但是Runnable接口并沒有任何對線程的支持,我們還必須創(chuàng)建Thread類的實例,這一點通過Thread類的構(gòu)造函數(shù)publicThread(Runnabletarget)來實現(xiàn)。下面是一個例子:publicclassMyThreadimplementsRunnableintcount=1numberpublicMyThread(intnum)number=numSystem.out.println
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- linux多線程編程
- 不錯的delphi多線程編程教程
- java多線程,集合框架(附簡單代碼)
- java多線程與線程安全實踐-基于http協(xié)議的斷點續(xù)傳
- 基于java的多線程下載工具的實現(xiàn)
- AOP在JAVA多線程監(jiān)控中的應(yīng)用.pdf
- [學(xué)習(xí)]網(wǎng)絡(luò)編程5-多線程服務(wù)器
- Java多線程調(diào)試工具的研究與開發(fā).pdf
- 基于JAVA的多線程下載工具的實現(xiàn).doc
- linux操作系統(tǒng)下的多線程編程詳細(xì)解析
- java基礎(chǔ)、java集合、多線程、jdbc、http、jsp、servlet、struts面試題匯總(附答案)
- 基于Java多線程的有限元并行計算的研究.pdf
- 基于多核多線程的混合并行編程技術(shù)研究.pdf
- 多線程的內(nèi)存調(diào)度.pdf
- 基于MES的JAVA多線程處理大數(shù)據(jù)模塊的設(shè)計與實現(xiàn).pdf
- SVG、Java多線程技術(shù)在Web GIS系統(tǒng)中的應(yīng)用研究.pdf
- 第8章java的多線程-唐大仕出版物、相關(guān)資料下載
- 24李后浪實驗五 多線程
- 基于Java字節(jié)碼的多線程數(shù)據(jù)競爭檢測方法研究及工具實現(xiàn).pdf
- 驗證帶有線程動態(tài)創(chuàng)建和退出多線程程序.pdf
評論
0/150
提交評論