大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國(guó)咨詢/投訴熱線:400-8080-105
動(dòng)力節(jié)點(diǎn)LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁(yè) 常見問題 Java線程編程培訓(xùn),多線程編程基礎(chǔ)

Java線程編程培訓(xùn),多線程編程基礎(chǔ)

更新時(shí)間:2020-08-04 11:23:36 來源:動(dòng)力節(jié)點(diǎn) 瀏覽2484次

一、進(jìn)程

進(jìn)程是操作系統(tǒng)結(jié)構(gòu)的基礎(chǔ);是一次程序的執(zhí)行;是一個(gè)程序及其數(shù)據(jù)在處理機(jī)上順序執(zhí)行時(shí)所發(fā)生的活動(dòng)。操作系統(tǒng)中,幾乎所有運(yùn)行中的任務(wù)對(duì)應(yīng)一條進(jìn)程(Process)。一個(gè)程序進(jìn)入內(nèi)存運(yùn)行,即變成一個(gè)進(jìn)程。進(jìn)程是處于運(yùn)行過程中的程序,并且具有一定獨(dú)立功能。描述進(jìn)程的有一句話非常經(jīng)典——進(jìn)程是系統(tǒng)進(jìn)行資源分配和調(diào)度的一個(gè)獨(dú)立單位。

進(jìn)程是系統(tǒng)中獨(dú)立存在的實(shí)體,擁有自己獨(dú)立的資源,擁有自己私有的地址空間。進(jìn)程的實(shí)質(zhì),就是程序在多道程序系統(tǒng)中的一次執(zhí)行過程,它是動(dòng)態(tài)產(chǎn)生,動(dòng)態(tài)消亡的,具有自己的生命周期和各種不同的狀態(tài)。進(jìn)程具有并發(fā)性,它可以同其他進(jìn)程一起并發(fā)執(zhí)行,按各自獨(dú)立的、不可預(yù)知的速度向前推進(jìn)。

(注意,并發(fā)性(concurrency)和并行性(parallel)是不同的。并行指的是同一時(shí)刻,多個(gè)指令在多臺(tái)處理器上同時(shí)運(yùn)行。并發(fā)指的是同一時(shí)刻只能有一條指令執(zhí)行,但多個(gè)進(jìn)程指令被快速輪換執(zhí)行,看起來就好像多個(gè)指令同時(shí)執(zhí)行一樣。)

進(jìn)程由程序、數(shù)據(jù)和進(jìn)程控制塊三部分組成。

二、線程

線程,有時(shí)被稱為輕量級(jí)進(jìn)程(Lightweight Process,LWP),是程序執(zhí)行流的最小單元。一個(gè)標(biāo)準(zhǔn)的線程由線程ID,當(dāng)前指令指針(PC),寄存器集合和堆棧組成。另外,線程是進(jìn)程中的一個(gè)實(shí)體,是被系統(tǒng)獨(dú)立調(diào)度和分派的基本單位,線程自己不擁有系統(tǒng)資源,只擁有一點(diǎn)兒在運(yùn)行中必不可少的資源,但它可與同屬一個(gè)進(jìn)程的其它線程共享進(jìn)程所擁有的全部資源。一個(gè)線程可以創(chuàng)建和撤消另一個(gè)線程,同一進(jìn)程中的多個(gè)線程之間可以并發(fā)執(zhí)行。由于線程之間的相互制約,致使線程在運(yùn)行中呈現(xiàn)出間斷性。每一個(gè)程序都至少有一個(gè)線程,若程序只有一個(gè)線程,那就是程序本身。

線程是程序中一個(gè)單一的順序控制流程。在單個(gè)程序中同時(shí)運(yùn)行多個(gè)線程完成不同的工作,稱為多線程。

在Java Web中要注意,線程是JVM級(jí)別的,在不停止的情況下,跟JVM共同消亡,就是說如果一個(gè)Web服務(wù)啟動(dòng)了多個(gè)Web應(yīng)用,某個(gè)Web應(yīng)用啟動(dòng)了某個(gè)線程,如果關(guān)閉這個(gè)Web應(yīng)用,線程并不會(huì)關(guān)閉,因?yàn)镴VM還在運(yùn)行,所以別忘了設(shè)置Web應(yīng)用關(guān)閉時(shí)停止線程。

三、線程狀態(tài)

線程狀態(tài)圖

 

Java線程編程培訓(xùn),多線程編程基礎(chǔ)

Java線程具有五種基本狀態(tài)

1、新建狀態(tài)(New):當(dāng)線程對(duì)象對(duì)創(chuàng)建后,即進(jìn)入了新建狀態(tài),如:Thread t=new MyThread();

2、就緒狀態(tài)(Runnable):也被稱為“可執(zhí)行狀態(tài)”。當(dāng)調(diào)用線程對(duì)象的start()方法(t.start();),線程即進(jìn)入就緒狀態(tài)。處于就緒狀態(tài)的線程,只是說明此線程已經(jīng)做好了準(zhǔn)備,隨時(shí)等待CPU調(diào)度執(zhí)行,并不是說執(zhí)行了t.start()此線程立即就會(huì)執(zhí)行;

3、運(yùn)行狀態(tài)(Running):當(dāng)CPU開始調(diào)度處于就緒狀態(tài)的線程時(shí),此時(shí)線程才得以真正執(zhí)行,即進(jìn)入到運(yùn)行狀態(tài)。注:就緒狀態(tài)是進(jìn)入到運(yùn)行狀態(tài)的唯一入口,也就是說,線程要想進(jìn)入運(yùn)行狀態(tài)執(zhí)行,首先必須處于就緒狀態(tài)中;

4、阻塞狀態(tài)(Blocked):處于運(yùn)行狀態(tài)中的線程由于某種原因,暫時(shí)放棄對(duì)CPU的使用權(quán),停止執(zhí)行,此時(shí)進(jìn)入阻塞狀態(tài),直到其進(jìn)入到就緒狀態(tài),才有機(jī)會(huì)再次被CPU調(diào)用以進(jìn)入到運(yùn)行狀態(tài)。根據(jù)阻塞產(chǎn)生的原因不同,阻塞狀態(tài)又可以分為三種:

(1)等待阻塞--運(yùn)行狀態(tài)中的線程執(zhí)行wait()方法,使本線程進(jìn)入到等待阻塞狀態(tài);

(2)同步阻塞--線程在獲取synchronized同步鎖失敗(因?yàn)殒i被其它線程所占用),它會(huì)進(jìn)入同步阻塞狀態(tài);

(3)其他阻塞--通過調(diào)用線程的sleep()或join()或發(fā)出了I/O請(qǐng)求時(shí),線程會(huì)進(jìn)入到阻塞狀態(tài)。當(dāng)sleep()狀態(tài)超時(shí)、join()等待線程終止或者超時(shí)、或者I/O處理完畢時(shí),線程重新轉(zhuǎn)入就緒狀態(tài)。

5、死亡狀態(tài)(Dead):線程執(zhí)行完了或者因異常退出了run()方法,該線程結(jié)束生命周期。

Java線程編程培訓(xùn),多線程編程基礎(chǔ)

Java多線程編程:http://www.dabaquan.cn/javathread/

以上就是動(dòng)力節(jié)點(diǎn)java培訓(xùn)機(jī)構(gòu)的小編針對(duì)“Java線程編程培訓(xùn),多線程編程基礎(chǔ)”的內(nèi)容進(jìn)行的回答,希望對(duì)大家有所幫助,如有疑問,請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為你服務(wù)。

提交申請(qǐng)后,顧問老師會(huì)電話與您溝通安排學(xué)習(xí)

  • 全國(guó)校區(qū) 2025-10-20 搶座中
免費(fèi)課程推薦 >>
技術(shù)文檔推薦 >>
主站蜘蛛池模板: 日韩一区二区三区不卡 | 亚洲你懂得 | 久久亚洲精品永久网站 | 日韩一区二区三区在线视频 | 日本一片免费观看高清完整 | 久久精品国产99久久无毒不卡 | 免费国内精品久久久久影院 | 欧美成人免费观看的 | 在线视频中文字幕 | 一级毛片免费视频 | 国产亚洲精品网站 | 国产在线91观看免费观看 | 国产欧美一区二区三区免费看 | 日本一区精品久久久久影院 | 美女国产精品 | 久久99热这里只有精品免费看 | 欧美日本一二三区 | 国产精品永久在线 | 久久天天躁综合夜夜黑人鲁色 | 国产永久| 婷婷激情亚洲 | 久久国产精品亚洲一区二区 | 亚洲欧美自拍一区 | 91热视频在线 | 久久综合久 | 日本三级一区 | 午夜视频在线观看网站 | 久久国产这里只有精品 | 伊人久久国产免费观看视频 | 欧美综合专区 | 欧美一a一片一级一片 | 特级毛片aaa免费版 特级毛片a级毛免费播放 | 免费看色片网站 | 欧美激情一区二区三区视频 | 婷婷色九月 | julia中文字幕在线 | 色妇色综合久久夜夜 | 国产一级强片在线观看 | 欧美成人老熟妇暴潮毛片 | 亚洲综合视频 | 久久久香蕉 |